New p2p protocol. NOTE: Needs major refactoring. See #50