Move IsOOBEComplete to HardwareInterface.

This patch moves the mockable IsOOBEComplete to the HardwareInterface
which already has a fake implemented. This is required as a first
step to make it available on the PolicyManager.

This patch also passes a null pointer when the timestamp isn't
required.

BUG=chromium:358269
TEST=Unittests adjusted and passing.

Change-Id: I620e0f4521832b3f2c0170811116251cdfe58f26
Reviewed-on: https://chromium-review.googlesource.com/193101
Reviewed-by: David Zeuthen <zeuthen@chromium.org>
Tested-by: Alex Deymo <deymo@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
diff --git a/hardware.h b/hardware.h
index cad5699..fdcdf13 100644
--- a/hardware.h
+++ b/hardware.h
@@ -26,6 +26,7 @@
   virtual bool MarkKernelUnbootable(const std::string& kernel_device) override;
   virtual bool IsOfficialBuild() const override;
   virtual bool IsNormalBootMode() const override;
+  virtual bool IsOOBEComplete(base::Time* out_time_of_oobe) const override;
   virtual std::string GetHardwareClass() const override;
   virtual std::string GetFirmwareVersion() const override;
   virtual std::string GetECVersion() const override;