Make shallow cloning optional

Git clone behavior should clone the full repo by default, and shallow clones only when requested.  Full clones are required for slaves to clone from master.