Implement 3-way handshake (#220)

Refactor net input utility functions
Add game start event (#225)