Major refactoring

I’ve done a load of refactoring. All the data is now sent between
clients. It’s easier to interact with other players online. Added
methods for storing Pokémon fairly succinctly. Added a visual timeline
to the fps counter to more easily see hiccups in the framerate.