Fixed issue where Systems could not register.

Systems had no way to register with the World class to get access to
entity data, forcing the user to write the code from scratch.
System.init() and System.destroy() now take a World* as an argument.