Major commit before a large cleanup.
Make the bin script an executable script.
Updated tests to reflect new structure.