Implement GDataCacheMetadataDB using leveldb.

* Add GDataCacheMetadataDB class and have CreateGDataCacheMetadata return this.
* Add ForceRescanForTesting to GDataCache and GDataCacheMetadata to make GDataCacheTest.InitializeCache work.
* Remove cache path initialization from ScanCachePaths into InitCachePaths and move this to gdata_cache.cc
* Other minor cleanup and lint errors.

BUG=136612,137146
TEST=unit tests.
Review URL: https://chromiumcodereview.appspot.com/10704218

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146987 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/chromeos/gdata/gdata_cache_unittest.cc b/chrome/browser/chromeos/gdata/gdata_cache_unittest.cc
index 396857d4..230057e3 100644
--- a/chrome/browser/chromeos/gdata/gdata_cache_unittest.cc
+++ b/chrome/browser/chromeos/gdata/gdata_cache_unittest.cc
@@ -2,6 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
+#include <vector>
+
 #include "base/file_util.h"
 #include "base/message_loop.h"
 #include "base/path_service.h"
@@ -213,8 +215,9 @@
         ASSERT_TRUE(file_util::CreateSymbolicLink(dest_path, link_path));
       }
     }
+
     DVLOG(1) << "PrepareForInitCacheTest finished";
-    cache_->RequestInitializeOnUIThread();  // Force a re-scan.
+    cache_->ForceRescanOnUIThreadForTesting();
     test_util::RunBlockingPoolTask();
   }