Move TranslateLanguageList to the Translate component

A lot of static methods from TranslateManager are moved to
TranslateDownloadManager, as they are related to the management of the
TranslateLanguageList.

The observer interface for translate events has been moved from
TranslateManager to TranslateLanguageList. It also has been changed into a
callback list rather than an observer list, since observers with a single method
are generally discouraged.

The SetSupportedLanguages() method in TranslateLanguageList has been moved
from the anonymous namespace as it needs to invoke the callbacks for
translate events.

Finally, this CL fixes a bug where the TranslateList was not listening to
ResourceRequestNotifications.

BUG=335077, 335085, 339508
R=blundell@chromium.org, jochen@chromium.org, joi@chromium.org, mad@chromium.org
TBR=jochen, joi, sky

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

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