Add node_manager class.

This class encapsulates everything needed to manage a node.

It mostly works by some scary subclass delegation.