log-manager: enable non-standard path for local tests

Enable the log-manager to be launched with a path other than
`/var/phosphor-logging` to allow it to be ran on a development system
for test purposes.  This required some refactoring throughout as to
how paths were handled.

Tested:

After running tests, `/tmp/phosphor-logging` is populated with
entries.  Launching `./builddir/phosphor-log-manager
/tmp/phosphor-logging`, the log-manager will have the entries on
dbus:

```
$ busctl --user tree xyz.openbmc_project.Logging
└─ /xyz
  └─ /xyz/openbmc_project
    └─ /xyz/openbmc_project/logging
      ├─ /xyz/openbmc_project/logging/entry
      │ ├─ /xyz/openbmc_project/logging/entry/100
      │ ├─ /xyz/openbmc_project/logging/entry/101
      │ ├─ /xyz/openbmc_project/logging/entry/102
      │ ├─ /xyz/openbmc_project/logging/entry/103
```

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I84968edeed0dcf73aaf8bb653060b6d3400b9b7b
diff --git a/paths.cpp b/paths.cpp
new file mode 100644
index 0000000..cf9c7b7
--- /dev/null
+++ b/paths.cpp
@@ -0,0 +1,15 @@
+#include "config.h"
+
+#include "paths.hpp"
+
+namespace phosphor::logging::paths
+{
+auto error() -> std::filesystem::path
+{
+    return std::filesystem::path(PERSIST_PATH_ROOT) / "errors";
+}
+auto extension() -> std::filesystem::path
+{
+    return std::filesystem::path(PERSIST_PATH_ROOT) / "extensions";
+}
+} // namespace phosphor::logging::paths