Move 'CheckPrerequisites' into osutils.py so that it can be reused.

BUG=none
TEST=All unit tests. cros_sdk and cbuildbot sample runs. Example runs
     where binaries are missing.

Change-Id: Id954050c399b0d38de307e2a9db1ba2c91fd0693
Reviewed-on: https://gerrit.chromium.org/gerrit/36731
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Commit-Ready: David James <davidjames@chromium.org>
Tested-by: David James <davidjames@chromium.org>
diff --git a/scripts/cbuildbot.py b/scripts/cbuildbot.py
index 6ca982c..924000f 100644
--- a/scripts/cbuildbot.py
+++ b/scripts/cbuildbot.py
@@ -1163,14 +1163,7 @@
       parser.error('Option --buildbot/--remote-trybot was given, but this '
                    'system does not support cgroups.  Failing.')
 
-    missing = []
-    for program in _BUILDBOT_REQUIRED_BINARIES:
-      ret = cros_build_lib.RunCommand(
-          'which %s' % program, shell=True, redirect_stderr=True,
-          redirect_stdout=True, error_code_ok=True, print_cmd=False)
-      if ret.returncode != 0:
-        missing.append(program)
-
+    missing = osutils.FindMissingBinaries(_BUILDBOT_REQUIRED_BINARIES)
     if missing:
       parser.error("Option --buildbot/--remote-trybot requires the following "
                    "binaries which couldn't be found in $PATH: %s"