Sections::dynamic_symbols - reading .dynsym

symbols() read only .symtab; a stripped shared object keeps only .dynsym, so reading a payload's imports needed the dynamic table. Added dynamic_symbols() beside symbols(), both over a shared symbols_of(kind). Pure format knowledge - the kind of gap this repository exists to fill once rather than in each consumer.

A payload crt0 was briefly added under runtime/ and removed: it executes on the console, which the admission test excludes ("a crt ... do not [belong here]"). It lives in obSCEne, which consumes dynamic_symbols + Nid to build its resolution table. The boundary held.