Split out clone command to new file, proof of concept for making the code a little more manageable

First working with this project I found the files very large to navigate
easily, thinking this may help. The thing I do not like so far with this
approach is the duplication of the `desc` call.

Still TODO here:

- [ ] Convert all commands to their own file
- [ ] DRY up the test setup
- [ ] DRY up the includes in the Command Classes