drb 2.8.0: P0 fixes from the 2026-07 architecture audit (drb-testbench#22-#27).

- is_subclass walks all parents; get_parents uses each parent's DAO (#22)
- node mutation operators repaired: no raise-after-delete, invalid keys raise KeyError, WrappedNode @= returns self (#23)
- get_impl returns the first registered impl on ambiguous match, deterministic order (#24)
- dead YAML-era code and orphan dependencies removed: PyYaml, jsonschema, XmlDao (and its stale test module), topic_schema.yml, py3.8 shim (#25)
- UrlNode credentials resolved through the drb.core.auth provider chain, host-scoped (#26)
- topic descriptor loading no longer fails silently: undiscoverable-topic warnings, malformed rows isolated, broken descriptors skipped (#27)