WIP client: min client for discovery

It seems like unnecessary abstraction for the sake of an awkward consistency with the other *Actions (unless you defined an `action` interface, then I'd understand ;-)