first cut: establishes base helper classes and main

cros_boot_mode supports determining the boot mode of a Chrome OS device.
By default, unsupported devices will be considered to be in "normal"
mode and CrOS devices with custom platform support will export the
required interfaces to support indicating "developer" mode.

In addition, there is support for short-circuiting the detection
using a kernel commandline parameter to enable arbitrary testing
of a single, untouched image on supported hardware without recompiling
the kernel, flipping switch, etc.

NOTE: common.mk was copied over from verity/common.mk.
Moved here from http://codereview.chromium.org/3432027/show

TEST=unittests
BUG=chromium-os:824,chromium-os:6864

Review URL: http://codereview.chromium.org/3530001

Change-Id: I32c67557bb8e0f33e980c904d7fd2732b06e22a0
24 files changed