Manage all interactions with clients
Manage peer references and keep them up to date so that when asked for peers, it can provide appropriate peers according to the criteria provided.
Build and maintain tunnels throughout the network.
Hacked up in-VM comm system for talking between contexts.
Dummy versions of things for testing.