epc-as-a-service functionality added

Change-Id: Idf09aa925eb43f898e6c645ba3ef136ca5e94f11
diff --git a/xos/models.py b/xos/models.py
index e49bfad..555dd01 100644
--- a/xos/models.py
+++ b/xos/models.py
@@ -10,6 +10,11 @@
    class Meta:
         proxy = True 
 
+   def create_tenant(self, **kwargs):
+       t = VBBUTenant(kind="vEPC", provider_service=self, connect_method="na", **kwargs)
+       t.save()
+       return t
+
 class VBBUTenant(VBBUTenant_decl):
    class Meta:
         proxy = True 
@@ -22,6 +27,13 @@
        super(VBBUTenant, self).__init__(*args, **kwargs)
 
    def save(self, *args, **kwargs):
+       if not self.creator:
+           if not getattr(self, "caller", None):
+               raise XOSProgrammingError("VBBUTenant's self.caller was not set")
+           self.creator = self.caller
+           if not self.creator:
+               raise XOSProgrammingError("VBBUTenant's self.creator was not set")
+
        super(VBBUTenant, self).save(*args, **kwargs)
        # This call needs to happen so that an instance is created for this
        # tenant is created in the slice. One instance is created per tenant.
diff --git a/xos/tosca/custom_types/vbbu.m4 b/xos/tosca/custom_types/vbbu.m4
index fe5065f..7c5e814 100644
--- a/xos/tosca/custom_types/vbbu.m4
+++ b/xos/tosca/custom_types/vbbu.m4
@@ -22,7 +22,4 @@
             VBBU Tenant
         properties:
             xos_base_tenant_props
-            tenant_message:
-                type: string
-                required: false
 
diff --git a/xos/tosca/custom_types/vbbu.yaml b/xos/tosca/custom_types/vbbu.yaml
index b272a5f..f368ba3 100644
--- a/xos/tosca/custom_types/vbbu.yaml
+++ b/xos/tosca/custom_types/vbbu.yaml
@@ -92,7 +92,4 @@
                 type: string
                 required: false
                 description: Service specific ID opaque to XOS but meaningful to service
-            tenant_message:
-                type: string
-                required: false
 
diff --git a/xos/tosca/resources/vbbutenant.py b/xos/tosca/resources/vbbutenant.py
index d8cf10d..06fd852 100644
--- a/xos/tosca/resources/vbbutenant.py
+++ b/xos/tosca/resources/vbbutenant.py
@@ -5,7 +5,7 @@
 class XOSVBBUTenant(XOSResource):
     provides = "tosca.nodes.VBBUTenant"
     xos_model = VBBUTenant
-    copyin_props = ("tenant_message",)
+    copyin_props = ()
     name_field = None
 
     def get_xos_args(self, throw_exception=True):
diff --git a/xos/vbbu.xproto b/xos/vbbu.xproto
index 07b24f3..4e00a0d 100644
--- a/xos/vbbu.xproto
+++ b/xos/vbbu.xproto
@@ -12,5 +12,4 @@
 message VBBUTenant (TenantWithContainer){
      option name = "VBBUTenant";
      option verbose_name = "Virtual Broadband Base Unit Tenant";
-     required string tenant_message = 1 [help_text = "Tenant Message to Display", max_length = 254, null = False, db_index = False, blank = False];
 }