make package installable
This merge request shuffles modules, executables around and introduces a setup.py
to install the code. This included moving some of the functionality defined within modules within if __name__ == '__main__'
conditionals into separate executables with analogous names.
Please note, I have not extensive tested these changes, although I have tried to make sure everything compiles and can find the libraries it expects. Given that I only shuffled things around without changing any functionality, that should mean nothing is broken. However, that's definitely worth checking.
Please let me know if there are specific things you'd like me to do to test these changes. Similarly, if there is anything else you'd like me to do before this goes in, just list it and I'll make sure it happens.