Made the engine and the view controllers have BinaryMessengers, not be BinaryMessengers. This allows us to break retain cycles and makes the leaking channels we have not less dire.