Restructure the code base and underlying code:
- all code belongs in a source directory
- helper functions and code should be condensed, cleaned and any hard coded paths removed
- main code should be separated by functionality
- main wrapper needs to be cleaned up and parameterized