Update parser for properties on zone objects

Create a service attribute that can be optionally defined on a group
denoting what service is hosting the group members. Initially, defining
a service name generates the group member(s) to be zone objects only.

This service attribute will be enhanced to specifically note what
service provides the group members and allow for a better trigger for
properties on zone objects instead of generating a blank signal match.

Tested:
    Blank signal match generated for group members in events used

Change-Id: I483fcf6a5e210e5d70bc9d5c4c0dee15524b01b9
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
diff --git a/control/templates/defs.mako b/control/templates/defs.mako
index 2fd3856..bcc0c5b 100644
--- a/control/templates/defs.mako
+++ b/control/templates/defs.mako
@@ -65,6 +65,8 @@
 std::vector<Signal>{
 %for s in event['signals']:
     Signal{
+        %if ('match' in s) and \
+            (s['match'] is not None):
         match::${s['match']}(
         %for i, mp in enumerate(s['mparams']):
         %if (i+1) != len(s['mparams']):
@@ -74,6 +76,9 @@
         %endif
         %endfor
         ),
+        %else:
+        "",
+        %endif
         make_handler(\
         ${indent(genHandler(sig=s), 3)}\
         )