Move unload-related events to Document.

* Split unload and pagehide event logic out of FrameLoader::stopLoading, into Document::dispatchUnloadEvents().
* Move before load event firing to Document as well.
* Add cases to Document::LoadEventProgress for end of life events, and calculate PageDismissalType based on LoadEventProgress.

BUG=

Review URL: https://chromiumcodereview.appspot.com/22870003

git-svn-id: svn://svn.chromium.org/blink/trunk@155960 bbb929c8-8fbe-4397-9dbb-9b2b20218538