Replace update.sh functionality

Currently we internally use a couple shell scripts to parse arguments and make sure a copy of ```ceph-qa-suite``` are checkout out before we run ```teuthology-suite```. That always seemed brittle and, more importantly, not fair to the community since those tools were kept out-of-tree. This PR adds the same functionality to teuthology itself.
what happens when `branch` has spaces in them? or is that something that will never happen?