refactor(fleetctl): move to new simpler CLI framework, part 1

- Remove all codegangsta/cli usage from fleetctl
- Create simple Command struct
- All commands return exit code and os.Exit is only called by main() (#275)
- Dramatically simplify flag usage by accessing flag variables directly
- Implement top level "help" + "version" commands
- Simplify glog usage by using its built-in global options
- Fix small output formatting issues in some commands
- Delay SSH tunnel establishment (#309)
- Fix SSH panic (#317)
refactor(fleetctl): remove globalconf and simplify env global options
refactor(fleetctl): move to new CLI framework, part 2
- use anonymous structs for storing global/shared flags
- remove pflag reference since for now we don't care about short flag names
refactor(fleetctl): CLI rework, part 3

- add custom global flagset so that glog's flags are hidden
- add global "--verbosity" flag, passed directly to glog
- add global "--debug" flag back, make equivalent to --verbosity=2
- document Command struct
- fix Usage and Description for every command
- use exit variable in runStatusUnits
- run gofmt against everything
- various gofmt cleanup