Add ash SessionStateDelegate

This CL refactors the ShellDelegate by adding a SessionStateDelegate to
which methods dealing with the session state can be moved. This cleans up
the huge ShellDelegate interface and paves the way for further Chrome OS
multiprofile work which will need to add several new methods related to
the session state.

This CL is only the first step. Several other methods should also move to
SessionStateDelegate but I do not want to overburden a single CL.

BUG=None
TEST=Manual and browser/unit tests

TBR=sky (for c/b/idle_chromeos.cc and c/chrome_browser_ui.gypi)

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@194578 0039d316-1c4b-4281-b951-d872f2087c98
50 files changed