fix lack of parse time errors location info

Location information of parse time error is given to javaScriptError not
with stack by with separate lineNumber and sourceID arguments. Put this info
to stack if it is empty so that it will be visible to user.

https://github.com/ariya/phantomjs/issues/11640
Merge pull request #11784 from vvavrychuk/parse-error

fix lack of parse time errors location info
Added onRepaint callback to webpage API.

Enables subscription to RepaintRequested events.
When the callback is invoked the time that the repaint was requested as well as the x,y and width,height of the repainted rectangle are provided as parameters.
Usage: page.onRepaint = function(time, x, y, width, height) { }

https://github.com/ariya/phantomjs/issues/11793
First attempt on using Travis CI.

https://github.com/ariya/phantomjs/issues/11880
Travis CI: Ensure packages are cached for faster setup.

https://github.com/ariya/phantomjs/issues/11880
Travis CI: Fix the build directives.

https://github.com/ariya/phantomjs/issues/11880
Travis CI: Packages installation needs a priviliged access.

https://github.com/ariya/phantomjs/issues/11880
Travis CI: Ensure that the build script executable.

https://github.com/ariya/phantomjs/issues/11880
Travis CI: Silent build.

https://github.com/ariya/phantomjs/issues/11880
QWidget: Fix unused parameter warning when there's no Graphics View.

This reduces the amount of repetitive compiler warnings.

https://github.com/ariya/phantomjs/issues/11880
Implement "page-break-inside: avoid" for non-floating block elements.

This patch is taken from https://bugs.webkit.org/show_bug.cgi?id=5097#c17

It was originally part of PR #211 but was possibly overlooked in PR #344
(when the other two patches got reapplied after the QT source import).
fixed test suite 'WebPage render image'

Previously the test suite 'WebPage render image' made a series of
webpage.open without waiting them to complete. This effected next
runned tests because on load handlers for pages were fired after
'WebPage render image' test finish.

https://github.com/ariya/phantomjs/issues/11780
Adds support for multiple Cookie Jars.

Previously, there was a single global cookie jar shared between all web pages.
Now, one can have separate cookie jars for different web pages.

Makes CookieJar a normal class, not a singleton.
Moves many public CookieJar methods to public slots.
Adds default cookie jar to Phantom.
Adds the CookieJar module that provides access to cookie jars in javascript.
Adds cookie jar module tests.

Usage:
var jar = require('cookiejar').create();
var webpage = require('webpage').create();
webpage.cookieJar = jar;
...
webpage.close();
jar.close();

JS API changes:
Webpage:
    var jar = page.cookieJar; -- assigns 'jar' the given webpage's cookie jar.
    page.cookiejar = jar; -- sets 'jar' as the given webpage's cookie jar.
CookieJar:
    var jar = require('cookiejar').create(path)
        creates a cookie jar with persistent storage at the given file path
        (path not mandatory).
    var cookies = jar.cookies; -- assign's 'jar' the list of cookies in the
        cookie jar.
    jar.cookies = [c1, c2]; -- sets the cookie jar's cookies as the ones in the
        list.
    jar.addCookie(cookie) -- adds cookie 'cookie' to the cookie jar.

https://github.com/ariya/phantomjs/issues/11417
OS X: Unsafe patch to fix selectable text on PDF output.

https://github.com/ariya/phantomjs/pull/11723
https://github.com/ariya/phantomjs/pull/11509
Update table page break improvements patch

Includes the following fixes taken from trvrnrths-qt:
- Ensure we have a first cell to measure when checking required table
  height
- Handle page break edge case with exactly fitting last table row
  In the case where the last table row on a page fitted exactly no
  extra offset was afforded to the next row. This resulted in no
  space being left for the painting of the table header on the next
  page.
- Fix segfault when checking heights for pagination if table body does
  not have a cell at 0,0

See https://github.com/ariya/phantomjs/pull/11291 and
https://github.com/ariya/phantomjs/pull/11490.