regulators: Implement D-Bus error logging

Implemented the DBusErrorLogging class.  This class creates error logs
using the D-Bus CreateWithFFDCFiles method.

Updated the abstract base class, ErrorLogging, to have the correct
virtual method parameters.  The methods were previously defined with no
parameters as a temporary measure.

Also updated the MockErrorLogging class to have the correct virtual
method parameters.

Tested:
  * Verified that all the log*Error() methods create an error log of the
    correct type.
  * Verified that created error logs have the expected:
    * property/field values
    * callouts with associated VPD
    * User Data sections containing debug data stored in FFDC files
  * Tested where creating an FFDC file fails.
  * Tested where calling CreateWithFFDCFiles method fails.
  * Tested where removing an FFDC file fails.
  * Verified that if a failure occurs, it is written to the system
    journal but does not result in a second error log (since that could
    lead to an infinite loop).
  * Verified that temporary FFDC files are removed even if creating the
    error log fails.

Full Test Plan:
  * https://gist.github.com/smccarney/60ecbc018c55a5d13661bda8ee256d61

Signed-off-by: Shawn McCarney <shawnmm@us.ibm.com>
Change-Id: I2837fc68dfbad2d89193a147222f1c51d9b1aad3
diff --git a/phosphor-regulators/src/meson.build b/phosphor-regulators/src/meson.build
index 8303769..b6b500c 100644
--- a/phosphor-regulators/src/meson.build
+++ b/phosphor-regulators/src/meson.build
@@ -9,6 +9,7 @@
     'config_file_parser.cpp',
     'configuration.cpp',
     'device.cpp',
+    'error_logging.cpp',
     'exception_utils.cpp',
     'ffdc_file.cpp',
     'id_map.cpp',