Rewrote a great deal of automain
Another significant rewrite of automain

- Much better _add_argument logic
- Added autofiles
- Added different capitalizations for -short options
- Now attach main to main_wrapper before returning it
- smart_open now supports str, bytes, and int, just like open
- More comments
- Fixed some bugs and potential exceptions