buffet: Add ExportedPropertySet delegate

This object makes it easy to export an org.freedesktop.DBus.Properties
interface.

BUG=chromium:356368
TEST=When integrated with the Manager, this correctly exposes
properties.  This can be tested with buffet_BasicDBusAPI.

Change-Id: I6c871ebbd225b6305ca9d4a309fb7b47ed305f9b
Reviewed-on: https://chromium-review.googlesource.com/192001
Tested-by: Christopher Wiley <wiley@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Alex Vakulenko <avakulenko@chromium.org>
Commit-Queue: Christopher Wiley <wiley@chromium.org>
diff --git a/buffet/buffet.gyp b/buffet/buffet.gyp
index d396525..f44d8dc 100644
--- a/buffet/buffet.gyp
+++ b/buffet/buffet.gyp
@@ -34,9 +34,10 @@
       'type': 'static_library',
       'sources': [
         'data_encoding.cc',
-        'dbus_manager.cc',
         'dbus_constants.cc',
+        'dbus_manager.cc',
         'dbus_utils.cc',
+        'exported_property_set.cc',
         'http_request.cc',
         'http_transport_curl.cc',
         'http_utils.cc',
@@ -73,6 +74,7 @@
       'sources': [
         'buffet_testrunner.cc',
         'data_encoding_unittest.cc',
+        'exported_property_set_unittest.cc',
         'mime_utils_unittest.cc',
         'string_utils_unittest.cc',
       ],