Add cargo-init, a cabal-like template generator

This independent module  initializes cargo repositories, much alike the functionality of "cabal init" for Haskell, or "dub init" for D. It allows the user to provide a name and license for their project, and have an instantly-buildable cargo package structure built for them.

cargo-init works both interactively and via command-line arguments.
This should be using the same flags-based infastructure as the rest of cargo commands.