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.
should be `x.filename_str() == Some(".gitignore")`, to avoid failing if there happens to be a invalid-UTF-8 file in the directory (in general, you should avoid `unwrap` as much as possible).