Add a command-line option --local-urls={true,false}

The default is 'true'.  When set 'false', file: and qrc: URLs are
treated as invalid (unknown scheme) rather than opening local files,
as requested in issue #12752.

In order to test this, I added a mechanism to test/run-tests.py
allowing individual tests to be annotated with command-line
options to pass to phantomjs or the script.
Port the tests from webpage-spec.js

Callback, clip-rect, confirm, object, prompt, scroll-position,
viewport-size and window.

https://github.com/ariya/phantomjs/issues/12439
Don't rely on JSON.parse() for page.evaluate().

https://github.com/ariya/phantomjs/issues/12615
Port more tests from webpage-spec.

https://github.com/ariya/phantomjs/issues/12439
Fix passing date as argument to page.evaluate().

https://github.com/ariya/phantomjs/issues/12615
Cast maxDiskCacheSize to qint64 to allow disk cache be more than 2Gb.

https://github.com/ariya/phantomjs/issues/12303