monitor: Create PowerOffAction class hierarchy

The PowerOffAction base class and its derived classes will be used to
power off a system due to fan failures.

There are 3 types of power offs:
1. HardPowerOff - Do a hard power off after a delay
2. SoftPowerOff - Do a soft power off after a delay
3. EpowPowerOff - This isn't fully defined yet, but it will involve
                  powering off after setting an early power off warning
                  somehow and then waiting through 2 delays.

The code that makes the D-Bus calls to do the power offs is in a
standalone class so that it can be be mocked in testcases.

This code also makes use of the Logger class for logging, so this commit
brings that in as a singleton.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I83118963df4ec0b4f89619572f6935329eec3adb
diff --git a/monitor/Makefile.am b/monitor/Makefile.am
index ecfab71..2c7a7fa 100644
--- a/monitor/Makefile.am
+++ b/monitor/Makefile.am
@@ -7,6 +7,8 @@
 phosphor_fan_monitor_SOURCES = \
 	argument.cpp \
 	fan.cpp \
+	power_interface.cpp \
+	logging.cpp \
 	main.cpp \
 	tach_sensor.cpp \
 	conditions.cpp \