Add callback groups

Allow named collections of callbacks to be defined and used anywhere
callbacks are used.

Change-Id: I3224aa06b2250e9a055bc70d20c186caecd033af
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/src/example/example.yaml b/src/example/example.yaml
index 171aeaa..0f286dc 100644
--- a/src/example/example.yaml
+++ b/src/example/example.yaml
@@ -74,3 +74,22 @@
   properties: example property group
   severity: INFO
   message: Hello world from PDM!
+
+- name: example callback group
+  description: >
+    'Callbacks groups are simply named collections of other callbacks.
+    Configuration file directives can only refer to a single callback.
+    Through use of a group, these configuration file directives can
+    refer to more than one callback.
+
+    For example for a given event, one may wish to trace multiple
+    messages to the systemd journal.  The journal callback does not
+    support tracing multiple messages.  To do that, define a callback
+    group composed of multiple journal callbacks.
+
+    This example callback group only has one member.  To add more, add
+    additional callbacks to the members element.'
+  class: callback
+  callback: group
+  members:
+    - example journal callback