#5 did some major refacotring, to find out the bullet code does not work... collision detection is hard