add unit tests, and fixes from unit tests.  steer does not pass