monitor: Update YAML parser to handle trust groups

It creates a list of group creator lambdas based on
the information in the monitor YAML file.

These lambdas are called by the manager class to create
the trust group instances.

A real life example is:

const std::vector<CreateGroupFunction> trustGroups
{
    {
        []()
        {
            std::vector<std::string> names{
                "fan0_1",
                "fan1_1",
                "fan2_1",
                "fan3_1",
            };
            return std::make_unique<NonzeroSpeed>(names);
        }
    },
};

Change-Id: Ia883df35efb86242aae2f8ed7d1714e94e65a6e6
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
diff --git a/monitor/groups.hpp b/monitor/groups.hpp
new file mode 100644
index 0000000..a2a98d9
--- /dev/null
+++ b/monitor/groups.hpp
@@ -0,0 +1,3 @@
+#pragma once
+
+#include "nonzero_speed_trust.hpp"