changed `--author_name` to `--author-name` to match typical style of command line arguments
changed some function names and implementations to improve readability
changed to `sys.exit` instead of exit as `sys.exit` is recommended for use in programs and `exit` is intended for use in the interactive shell (this can cause issues for some terminal emulators)