sync_manager: Create sync watch class

Create a watch class to monitor the files and directories
specified in the synclist file.
Store the file descriptors and file names in a map to be
able to know the full path of the file that triggered the
event. The watch descriptor number does not change so it
can be a single variable.

Change-Id: I211225ddc012af85d9be39ae5d40b8258d73435d
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
diff --git a/Makefile.am b/Makefile.am
index b4755c5..9b6b508 100755
--- a/Makefile.am
+++ b/Makefile.am
@@ -45,9 +45,14 @@
 endif
 
 if WANT_SYNC
-noinst_HEADERS += sync_manager.hpp
+noinst_HEADERS += \
+	sync_manager.hpp \
+	sync_watch.hpp
 sbin_PROGRAMS += phosphor-sync-software-manager
-phosphor_sync_software_manager_SOURCES = sync_manager_main.cpp
+phosphor_sync_software_manager_SOURCES = \
+	sync_manager.cpp \
+	sync_watch.cpp \
+	sync_manager_main.cpp
 phosphor_sync_software_manager_CXXFLAGS = $(generic_cxxflags)
 phosphor_sync_software_manager_LDFLAGS = $(generic_ldflags)
 endif