VOL-724 VOL-2106 Return of reconciliation and MIB external storage

Requires pyvoltha updates: https://gerrit.opencord.org/#/c/17881/

- reconcile/adapter restart works.  remove forced reboot!
  Needed to create persistence object and recovery procedures
  to fill in variables from omci db and persisted state
  refactored mib_in_sync needed to work with reconcile

- Use new lazy write in-memory storage class.  Drop in replacement for mib_db_dict

- New Twisted etcd storage class.  defers to threads given etcd3 blocks.

- Create function for initializing metrics.  needed for reconcile

- Store onu indication data in etcd so reconciliation can mimic restarting omci

- Check if reconciling to prevent recreation and duplication of ports and provisioning

Change-Id: I08fd5d570059b4ba82e220a20a731dfc3ab1efe1
diff --git a/python/adapters/brcm_openomci_onu/onu_tcont.py b/python/adapters/brcm_openomci_onu/onu_tcont.py
index 7472728..6482aed 100644
--- a/python/adapters/brcm_openomci_onu/onu_tcont.py
+++ b/python/adapters/brcm_openomci_onu/onu_tcont.py
@@ -60,6 +60,10 @@
     def entity_id(self):
         return self._entity_id
 
+    @entity_id.setter
+    def entity_id(self, value):
+        self._entity_id = value
+
     @property
     def q_sched_policy(self):
         return self._q_sched_policy