Added more exception handling
Also added a help / usage display option
Updated args interpretation
A few more options for how the the user might request help, including invoking the binary with no parameters