Add generated main document URL request job support

A generated main document is an empty HTML document which <body> tag contains
JavaScript files specified in manifest.json. Ref to:
http://anssiko.github.io/runtime/app-lifecycle.html#a-single-entry-point-to-the-application

The GeneratedMainDocumentJob implementation is borrowed from Chromium extension
GeneratedBackgroundPageJob. When a URL request matches
"_generated_main_document.html" file name the job will be created and returns
the generated content.
Add main document launch support

Main document is an invisble document no matter whether it is a real file or a
generated one. Working as the main entry of an application, the main document
must be loaded before other pages.(see
http://anssiko.github.io/runtime/app-lifecycle.html)

So the Runtime::Create() is modified to create a Runtime instance without attach
to any app window, and the WebContents' initial size is also set to (0,0).
Runtime::CreateWithDefaultWindow() now works like previous Runtime::Create().
Currently we support application both run from main document and local path,
however the local path support may be deprecated in the future.
Add main document browser test
Merge pull request #656 from seanlong/master

[Runtime] Add main document(aka "event page") launch support