Rearranging stuff to finally support collision detection