Migrate to cobra CLI system

Refactored the CLI commands to use [cobra](https://github.com/spf13/cobra). Nothing outside of the `main` package (the CLI entry point/commands) is changed by this PR.

Addresses #111

* Now subcommands automatically get a nice help command when running `ipfs help <cmd>`
* Both long and short flags can be used, e.g. `ipfs add -r` or `ipfs add --recursive`
* Flags can now be defined as either persistent or local. For example the `--config` flag is persistent and can be accessed by any subcommand
this is a critical touch point with the user, it's the first thing they see. it's phenomenal for teaching users how to think about + use the tool. Can't leave this to an auto-generated thing to screw it up.