Code clarity changes made:
 * Removed logic switches for returning an error, error cases will now just raise an exception,
   which will be caught and have its error message printed
 * Split up some overly long functions in separate component functions
 * A few pep8 fixes were made. Not all the code is up to pep8 standards but not a huge dealwq
bug fix on has_events
 * I unwittingly introduced a bug by removing the has_events boolean, I didn't realize events
   was a generator
Issue #3
 * Added the ability for a user to specify a custom time to stop viewing build order events
 * Added a main.py script that contains the argument parser and CLS
 * Added an exception module which contains custom exceptions for spawningtool
Merge branch 'develop', remote-tracking branch 'origin'