git ignore
Config file fixes. Widespread fixes & cleanup.

I have tested that this actually will initialize a new CA and start
generating and signing certificates.

-   Fix problems with generated openssl.cnf files
-   Raise exceptions rather than print message + sys.exit
-   Misc fixes from moving to a config file rather than hardcoded values
    or command line arguments
-   Remove ability to specify things like stateOrProvince because why
-   Misc fixes from moving from a monolithic object to lots of functions
-   Simplified subjectAltName handling
-   Only allow initca --purge if debugging is turned on
-   Emit help if user doesn't specify a subcommand
-   Move all todo items from comments to the taskpaper
Now using argparse parents. Cleaner, more readable