cargo clean

Adds cargo-clean sub-command. Would address Issue #51 if this PR is merged.
This may perhaps be better handled with a chain to a `human` error in conjunction with the `try!` macro:

```rust
try!(rmdir_recursive(build_dir).chain_error(|| human("Could not remove build directory")))
```