Finished Rough Draft

Committed rest of the code needed for Surge, still not in a completely
polished state