Allow change of model manifest id

Add support for changing model manifest id.  This
will allow OEMs to easily modify the model
in their device code

The specification of the model manifest ids for the sample
devices will happen in a following CL.
Change-Id: Ic36161b21df82d62233d54dd18b516cbf4fea16c
Reviewed-on: https://weave-review.googlesource.com/1790
Reviewed-by: Paul Westbrook <pwestbro@google.com>
diff --git a/examples/daemon/common/daemon.h b/examples/daemon/common/daemon.h
index 0e05b88..5a90988 100644
--- a/examples/daemon/common/daemon.h
+++ b/examples/daemon/common/daemon.h
@@ -19,10 +19,11 @@
 class Daemon {
  public:
   struct Options {
-    bool force_bootstrapping_ = false;
-    bool disable_security_ = false;
-    bool disable_privet_ = false;
+    bool force_bootstrapping_{false};
+    bool disable_security_{false};
+    bool disable_privet_{false};
     std::string registration_ticket_;
+    std::string model_id_{"AAAAA"};
 
     static void ShowUsage(const std::string& name) {
       LOG(ERROR) << "\nUsage: " << name << " <option(s)>"
@@ -69,7 +70,7 @@
 
   Daemon(const Options& opts)
       : config_store_{new weave::examples::FileConfigStore(
-            opts.disable_security_)},
+            opts.disable_security_, opts.model_id_)},
         task_runner_{new weave::examples::EventTaskRunner},
         http_client_{new weave::examples::CurlHttpClient(task_runner_.get())},
         network_{new weave::examples::EventNetworkImpl(task_runner_.get())},