Extract ContentScanner from DirectoryContent.

DirectoryContent had basically two functions.
1) The list of entries.
2) The scanning entries from backend.
This CL extracts 2) part from DirectoryContent and create ContentScanner to
simplify the code path. At the same time, some events sent from
DirectoryContent was resorted, and their handlers in FileManager is fixed at
the same time.

BUG=279614
TEST=Ran browser_tests --gtest_filter="*FileSystemExtensionApiTest*:*FileManagerBrowserTest*:*FileBrowserPrivateApiTest*" and tested manually.

Review URL: https://codereview.chromium.org/25278002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226420 0039d316-1c4b-4281-b951-d872f2087c98
Update OS version functions.

BUG=none
TEST=covered

Review URL: https://codereview.chromium.org/25286002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226421 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 226421
Mojo: Optimize VerifyUserPointer().

Gets rid of run-time division. In the new empty read test, goes from ~8.7
million iterations/second to ~9.7 million iterations/second (and in perf makes
VerifyUserPointer() go from ~10% to ~0.5%).

R=darin

Review URL: https://codereview.chromium.org/25323003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226422 0039d316-1c4b-4281-b951-d872f2087c98
views menus: fix alignment of items that have both checks and icons

BUG=294465

Review URL: https://codereview.chromium.org/25444004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226423 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 226423