Define message handler outside of constructor

Signed-off-by: Eli Skeggs <skeggse@gmail.com>
Allow Discovery instances to communicate within a process

Signed-off-by: Eli Skeggs <skeggse@gmail.com>
Add TODOs

Signed-off-by: Eli Skeggs <skeggse@gmail.com>
Add Network tests

Signed-off-by: Eli Skeggs <skeggse@gmail.com>