Dry-coded discovery; is probably all busticulated.
Wrote placeholders for unit tests to come.
Split out nodeify into its own file for inclusion elsewhere.
Added a dependence on async for the moment until I can restructure discovery.