added some TODOs made some structural changes, still hasn't been run on real hardware or debugged
merged paul's updates