Refactor

* Remove per-environment subclasses
* Add subcommand macro and modify subcommand lookup
* Simplify Environment internals
* Push app_name/remote_name determination into Config

Removed, but will come back soon:

* Restore action using (interestingly) Parity::Backup
* puts Parity::Usage.new