Refactor into layers
Use traits

A simpler way to check if something is a host or controller
Refactor 2PC a bit
Initial waypoint passes really simple test
Latest updates from master
Merged