Keep rover from driving on undrivable squares

The current implementation assumes that the rover's parent frame of reference is the world frame of reference.  We should switch the call from translateBy to worldTransformBy, but currently there is a bug in that.