cros_setup_toolchains: refactor parser setup

No functional changes here, just tidies up the main func a bit and makes
it easier to test things.

BUG=chromium:751852
TEST=precqs pass

Change-Id: I1c377b344a4685d8860ca231a6c16457b45aa13c
Reviewed-on: https://chromium-review.googlesource.com/663440
Commit-Ready: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
diff --git a/scripts/cros_setup_toolchains.py b/scripts/cros_setup_toolchains.py
index e64cb9d..42e1982 100644
--- a/scripts/cros_setup_toolchains.py
+++ b/scripts/cros_setup_toolchains.py
@@ -1213,7 +1213,8 @@
         queue.put([tar_file, os.path.join(tempdir, target)])
 
 
-def main(argv):
+def GetParser():
+  """Return a command line parser."""
   parser = commandline.ArgumentParser(description=__doc__)
   parser.add_argument('-u', '--nousepkg',
                       action='store_false', dest='usepkg', default=True,
@@ -1245,7 +1246,11 @@
                       help='Reload crossdev config and reselect toolchains')
   parser.add_argument('--sysroot', type='path',
                       help='The sysroot in which to install the toolchains')
+  return parser
 
+
+def main(argv):
+  parser = GetParser()
   options = parser.parse_args(argv)
   options.Freeze()