Re-land "[shill] Provide a cmd line toggle between flimflam and shill storage dirs"

This is so that we can easily switch to (and away from) using
the flimflam profile dir (and user profile dirs) when we start shill.

BUG=chromium-os:17253
TEST=unit

Change-Id: I0264162665607bb180688428c4640e42383ae355
Reviewed-on: http://gerrit.chromium.org/gerrit/6568
Reviewed-by: Chris Masone <cmasone@chromium.org>
Tested-by: Chris Masone <cmasone@chromium.org>
diff --git a/default_profile.h b/default_profile.h
index 36374ae..0876ade 100644
--- a/default_profile.h
+++ b/default_profile.h
@@ -8,6 +8,7 @@
 #include <string>
 #include <vector>
 
+#include <base/file_path.h>
 #include <base/memory/scoped_ptr.h>
 
 #include "shill/manager.h"
@@ -22,15 +23,26 @@
 
 class DefaultProfile : public Profile {
  public:
-  DefaultProfile(ControlInterface *control_interface,
+  DefaultProfile(ControlInterface *control,
                  GLib *glib,
                  Manager *manager,
+                 const FilePath &storage_path,
                  const Manager::Properties &manager_props);
   virtual ~DefaultProfile();
 
+
+  // Sets |path| to the persistent store file path for the default, global
+  // profile. Returns true on success, and false if unable to determine an
+  // appropriate file location.
+  //
+  // In this implementation, |name_| is ignored.
+  virtual bool GetStoragePath(FilePath *path);
+
  private:
   static const char kDefaultId[];
 
+  const FilePath storage_path_;
+
   DISALLOW_COPY_AND_ASSIGN(DefaultProfile);
 };