Major code reorganization

Not refactoring per se, but our codebase was in huge need of better organization and file naming conventions.

More refactoring/moving to come, but this is a good start.