Add --use-submodules option to `carthage checkout`

_Depends on #117._

Resolves #56.

**To do:**

 - [x] Skip recursive cloning for non-submoduled dependencies that live in `Carthage.checkout` (i.e., smartly omit Carthage-managed submodules from normal recursive checkouts)
 - [x] Honor submodules already present with `carthage checkout`

/cc @mdiep