Implement replacement policies for the ephemeral apps cache

Garbage collect inactive ephemeral apps. The app's data will be removed
at the same time for now. The policies of the cache are:
1. If the app is currently running, it will not be removed.
2. If the app has been launched within 1 day, it will not be removed.
3. If the app has not been launched for more than 10 days, it will be
removed.
4. For apps that have been launched between 1 and 10 days, the least
recently launched excess will be removed if the cache exceeds 30
apps.

BUG=312460

TEST=unit_tests (EphemeralAppServiceTest.*)
browser_tests (EphemeralAppServiceBrowserTest.*)

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241701 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 241701
Keep NaCl plugins used in app background pages alive when active.

Activity in Native Client plugins results in IPC messages
sent to the BrowserPpapiHostImpl and routed to call
extensions::ProcessManager::KeepaliveImpulse.

Implementation patch, to be followed by tests. See:
https://codereview.chromium.org/111563006/ Tests.
https://codereview.chromium.org/105873003/ Cumulative patch.

Design doc: 
https://docs.google.com/a/chromium.org/document/d/1mI0lS1rfAf-BAGLmWAEcWy37Xq9dOvgfMx8OqeUMXts/edit#

BUG=298339

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241702 0039d316-1c4b-4281-b951-d872f2087c98
Remove an unused OnClose() method from AudioInputCallback.

BUG=328357

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

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