production ready
Lots of clean up