respect --os-version and --os-type in teuthology.run

This should fix issue #10279.  I tested in octo and sepia with a yaml config that included os_type and os_version and ensured that --os-type and --os-version will override what's in the yaml if used.  I tested with vps machines in sepia and bare metal in octo.

I also moved the get_distro and get_distro_version functions from teuthology.misc to teuthology.provision as it was the only code using those functions.

I've also got this run scheduled: http://pulpito.ceph.redhat.com/andrewschoen-2014-12-16_16:49:17-rest-giant-distro-basic-magna/
Not sure that's necessary.  That's a default function of docopt to set unused optional args to None.  The other test here will make sure it won't get accidentally deleted or anything.