Reorganized directory to a structure I think will mirror the format for
turning in our project. Also refactored a few classes to encapsulate
functionality. Main method accepts three argument parameters.