Implement expose util to specify public methods to a private object.

This CL also hides all of Event's privates.

BUG=324859

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

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