Documented much more and found some optimization in the collision detection methods.