all done except sonar drivers, added main program