Added the start of a player component.
Added loads of events, it about time we got them :D
Changed the way a few things work.
Not sure if these changes will be permanent.
Class aliases can now be used in code.