Implement some of the local prediction. Refactor MessageType and MessageHub.