Add breakpad support for Windows.

Squashed commit of the following:

commit 947ee621067258adc5af382b496868ea6da6a589
Author: Vitaliy Slobodin <vitaliy.slobodin@gmail.com>
Date:   Fri Aug 17 10:34:34 2012 +0400

    Format code according to http://qt-project.org/wiki/Qt_Coding_Style

commit 5aaaa5338370c77dbd7bf7026949b637da536216
Author: Vitaliy Slobodin <vitaliy.slobodin@gmail.com>
Date:   Thu Aug 16 13:12:05 2012 +0400

    Add breakpad support for Windows (crashdumps).
    Issue: http://code.google.com/p/phantomjs/issues/detail?id=576
Explicit mentions of third-party code.

http://code.google.com/p/phantomjs/issues/detail?id=718
Fixing Windows-specific path issues with loading of modules

http://code.google.com/p/phantomjs/issues/detail?id=721
Add missing pageref attribute to HAR and end-time.

http://code.google.com/p/phantomjs/issues/detail?id=733

Squashed commit of the following:

commit c6b984442c8631ac13308f5d72fd35973bd964d1
Author: Ilya Grigorik <ilya@igvita.com>
Date:   Sun Aug 26 12:23:03 2012 -0700

    add onLoad to pageTimings

commit d2bb53cd7340e920c62bed557bef4e3a1cdc62b2
Author: Ilya Grigorik <ilya@igvita.com>
Date:   Sun Aug 26 12:01:57 2012 -0700

    add mising pageref attr to each entry
Removed now-unneeded copy of JavaScriptCore and WebCore object files to different location.

Also replaced single backslash with double backslash in OPENSSL_LIBS variable so paths will be properly escaped.

http://code.google.com/p/phantomjs/issues/detail?id=744
Suppressing warning C4099, C4100, C4189.

C4900 (Object declared as a struct is defined as a class), C4100 (A formal
parameter to a function is not referenced in the function body), and
C4189 (A variable is declared and initialized, but not used).

http://code.google.com/p/phantomjs/issues/detail?id=744
Windows: Adding static build settings.

(Q_NODLL Q_DECL_IMPORT QT_STATIC_BUILD STATIC) to DEFINES list for WebKit build
to quiet linker warnings.

http://code.google.com/p/phantomjs/issues/detail?id=744
Only define _HAS_TR1=0 for Visual Studio 2008 and below.

It is already defined in Visual Studio 2010 and later.

http://code.google.com/p/phantomjs/issues/detail?id=744
Implement in-memory cookies storage for CookieJar.

http://code.google.com/p/phantomjs/issues/detail?id=603

Squashed commit of the following:

commit 2087320b9549aa2bba53d73e8a681133e5b4fe96
Author: neraliu <neraliu@gmail.com>
Date:   Sat Jul 14 20:55:17 2012 +0800

    Improve the readability of the function CookieJar::setCookies and CookieJar::cookies.

commit 7ef076e9df488c8f82863cb9c6e31350af5eaad8
Author: neraliu <neraliu@gmail.com>
Date:   Fri Jul 13 18:08:07 2012 +0800

    Fix the indentation problem in the file cookiejar.cpp.
    Remove some commented code segment in cookiejar.cpp.

commit d8fd7f49eb1ba0fb47c27aec9b3dcd36ca14f301
Author: neraliu <neraliu@gmail.com>
Date:   Fri Jul 13 18:04:41 2012 +0800

    Simplify the implementation of CookieJar::setCookiesFromUrl to use the same security policy of QNetworkCookieJar::setCookiesFromUrl in QtWebkit

commit f5e34d2b787bb9714c45a8ad0baff8b5282d3249
Author: neraliu <neraliu@gmail.com>
Date:   Fri Jul 13 17:20:38 2012 +0800

    Simplify the implementation of CookieJar::cookiesForUrl to use the same security policy of QNetworkCookieJar::cookiesForUrl in QtWebkit.

commit 5b10e3788cce7bd69bb71c7ee06f0b49e1e92228
Author: Nera Liu <neraliu@gmail.com>
Date:   Mon Jun 25 10:56:32 2012 +0800

    Remove the clearAllCookies() api by allowing to clear cookies by page.cookies = [] Javascript syntax.

commit a1f12b2913b6f3a3f11a2d22b5eb8c35bf62bf48
Author: Nera Liu <neraliu@gmail.com>
Date:   Sun Jun 24 21:48:49 2012 +0800

    Implement in-memory cookies storage for CookieJar allowing dynamic cookie manipulation via Javascript for issue 603.

    Add sanity check for the in-memory cookies storage for CookieJar.

    http://code.google.com/p/phantomjs/issues/detail?id=603
Import QCommandLine 0.3.0 into our source tree.

http://code.google.com/p/phantomjs/issues/detail?id=55
Modify QCommandLine to suit our needs better.

Allow null shortname for options.
Do not include params in the help text.

http://code.google.com/p/phantomjs/issues/detail?id=55
Build QCommandLine.

http://code.google.com/p/phantomjs/issues/detail?id=55
Use QCommandLine for command-line options handling.

http://code.google.com/p/phantomjs/issues/detail?id=55
Add 'isSSLSupported' to the system module.

http://code.google.com/p/phantomjs/issues/detail?id=484
Fix handling of boolean values in Config.cpp

http://code.google.com/p/phantomjs/issues/detail?id=55
Show a warning when requesting a secure resource without SSL support.

Special thanks to Thiago Maciera for the tip on "https" scheme.

http://code.google.com/p/phantomjs/issues/detail?id=484
Allow bypassing automatic use and detection of system proxy.

Pass the command-line option --proxy-type=none to completely bypass any proxy.

http://code.google.com/p/phantomjs/issues/detail?id=580
Ensure QCommandLine builds with VS 2010.

The fix is from Vitaliy Slobodin <vitaliy.slobodin@gmail.com>

http://code.google.com/p/phantomjs/issues/detail?id=55
Add the missing local storage change in Lavender.

http://code.google.com/p/phantomjs/issues/detail?id=598
http://code.google.com/p/phantomjs/issues/detail?id=300
Added "page.close()" and "page.onClosing = function(page){}" callback.

* Addresses [Issue 678](http://code.google.com/p/phantomjs/issues/detail?id=678)
* "page.close()" deprecated "page.release()"
* the callback "onClosing(page)" gets back the reference to the closing page - that can be ideal to have 1 handler for all the page that close
* It works both when closing directly the page, or if the page closes by itself
* If parent closes, child close too

Tests provided.