/name keys use never reached deriveNameOwner, so it did not change where a
purchase went. Pass the selection through.
Nothing restored the derivation marks after an import, so import + rescan +
buy derived the recovered name's own key, failing after the code was spent.
A scan now raises both marks; a purchase re-checks the path first.
Also from review: three Haddock blocks moved onto their bindings, the
hardcoded "of 10" dropped, scanSeed's fan-out documented, unused user
bindings removed.