Refactored to use Box2D objects.