firmware: start notion of a session

An update mechanism needs a session for tracking details.  This
structure begins a representation of that information.

Change-Id: I897237902407b816ce449873f49e387928e62db7
Signed-off-by: Patrick Venture <venture@google.com>
diff --git a/firmware_handler.hpp b/firmware_handler.hpp
index 786b2d1..cc7d2c0 100644
--- a/firmware_handler.hpp
+++ b/firmware_handler.hpp
@@ -13,6 +13,20 @@
 {
 
 /**
+ * Representation of a session, includes how to read/write data.
+ */
+struct Session
+{
+    /** Pointer to the correct Data handler interface. (nullptr on BT (or KCS))
+     */
+    DataInterface* dataHandler;
+
+    /** Pointer to the correct image handler interface.  (nullptr on hash
+     * blob_id) */
+    ImageHandlerInterface* imageHandler;
+};
+
+/**
  * Register only one firmware blob handler that will manage all sessions.
  */
 class FirmwareBlobHandler : public GenericBlobInterface