Added all events and added methods which throw them, as well as finalizing the GamePlayer object and preparing NetworkGame for use (after a refactor)