Making RoutingTable testable

Added all calls to the routing table:
- repair and fail when connections are made or lost
- handling of MyDist and messaging in network handler
- handing of R and B commands in console handler

removed the interface since a static class can't implement it, and we're
using static classes everywhere else. Made the relevant methods in
RoutingTable public.

Fixed a small bug with the code being able to send messages before the
networkstream was assigned to a variable.