Refactored and simplified update and collision detection code (there is still an issue with collisions remaining).
Implemented Pools class to have a reduced GC usage.