Fixes #205

Re-emergence of the clone() issues. Player now has a constructor with non-default parameters, so byteArray.readObject() can't clone it. This is why I said "fuck it, use globals" for things like the argument being passed into player (a reference to the Game class, which we have a global for)