fixed the implementation of the services
some work on collision detection.  Starting on rectangle spec