diff --git a/composer.json b/composer.json
index 974dc0e..1e853b5 100644
--- a/composer.json
+++ b/composer.json
@@ -15,15 +15,15 @@
     "symfony/routing": "2.5.*",
     "symfony/serializer": "2.5.*",
     "symfony/validator": "2.5.*",
-    "symfony/yaml": "dev-master#499f7d7aa96747ad97940089bd7a1fb24ad8182a",
+    "symfony/yaml": "dev-master#499f7d7aa96747ad97940089bd7a1fb24ad8182a as 2.5.0",
     "twig/twig": "1.16.*",
-    "doctrine/common": "dev-master#a45d110f71c323e29f41eb0696fa230e3fa1b1b5",
+    "doctrine/common": "2.4.*",
     "doctrine/annotations": "1.2.*",
     "guzzlehttp/guzzle": "~5.0",
     "symfony-cmf/routing": "1.3.*",
     "easyrdf/easyrdf": "0.8.*",
     "phpunit/phpunit": "4.1.*",
-    "phpunit/phpunit-mock-objects": "dev-master#e60bb929c50ae4237aaf680a4f6773f4ee17f0a2",
+    "phpunit/phpunit-mock-objects": "2.1.*",
     "zendframework/zend-feed": "2.2.*",
     "mikey179/vfsStream": "1.*",
     "stack/builder": "1.0.*",
diff --git a/composer.lock b/composer.lock
index 4849c75..6452a70 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
         "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
         "This file is @generated automatically"
     ],
-    "hash": "2bd5814ec010b13a6997359736b58695",
+    "hash": "f131c2d4d194214496e610013b954eb2",
     "packages": [
         {
             "name": "doctrine/annotations",
@@ -213,16 +213,16 @@
         },
         {
             "name": "doctrine/common",
-            "version": "dev-master",
+            "version": "v2.4.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/doctrine/common.git",
-                "reference": "a45d110f71c323e29f41eb0696fa230e3fa1b1b5"
+                "reference": "5db6ab40e4c531f14dad4ca96a394dfce5d4255b"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/doctrine/common/zipball/a45d110f71c323e29f41eb0696fa230e3fa1b1b5",
-                "reference": "a45d110f71c323e29f41eb0696fa230e3fa1b1b5",
+                "url": "https://api.github.com/repos/doctrine/common/zipball/5db6ab40e4c531f14dad4ca96a394dfce5d4255b",
+                "reference": "5db6ab40e4c531f14dad4ca96a394dfce5d4255b",
                 "shasum": ""
             },
             "require": {
@@ -239,7 +239,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "2.5.x-dev"
+                    "dev-master": "2.4.x-dev"
                 }
             },
             "autoload": {
@@ -274,7 +274,7 @@
                 {
                     "name": "Johannes Schmitt",
                     "email": "schmittjoh@gmail.com",
-                    "homepage": "http://jmsyst.com",
+                    "homepage": "https://github.com/schmittjoh",
                     "role": "Developer of wrapped JMSSerializerBundle"
                 }
             ],
@@ -287,7 +287,7 @@
                 "persistence",
                 "spl"
             ],
-            "time": "2014-01-12 22:00:08"
+            "time": "2014-05-21 19:28:51"
         },
         {
             "name": "doctrine/inflector",
@@ -295,12 +295,12 @@
             "source": {
                 "type": "git",
                 "url": "https://github.com/doctrine/inflector.git",
-                "reference": "v1.0"
+                "reference": "54b8333d2a5682afdc690060c1cf384ba9f47f08"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://github.com/doctrine/inflector/archive/v1.0.zip",
-                "reference": "v1.0",
+                "url": "https://api.github.com/repos/doctrine/inflector/zipball/54b8333d2a5682afdc690060c1cf384ba9f47f08",
+                "reference": "54b8333d2a5682afdc690060c1cf384ba9f47f08",
                 "shasum": ""
             },
             "require": {
@@ -320,7 +320,8 @@
                 {
                     "name": "Jonathan Wage",
                     "email": "jonwage@gmail.com",
-                    "homepage": "http://www.jwage.com/"
+                    "homepage": "http://www.jwage.com/",
+                    "role": "Creator"
                 },
                 {
                     "name": "Guilherme Blanco",
@@ -336,7 +337,7 @@
                     "email": "kontakt@beberlei.de"
                 },
                 {
-                    "name": "Johannes M. Schmitt",
+                    "name": "Johannes Schmitt",
                     "email": "schmittjoh@gmail.com",
                     "homepage": "https://github.com/schmittjoh",
                     "role": "Developer of wrapped JMSSerializerBundle"
@@ -353,71 +354,17 @@
             "time": "2013-01-10 21:49:15"
         },
         {
-            "name": "doctrine/instantiator",
-            "version": "1.0.4",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/doctrine/instantiator.git",
-                "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f976e5de371104877ebc89bd8fecb0019ed9c119",
-                "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3,<8.0-DEV"
-            },
-            "require-dev": {
-                "athletic/athletic": "~0.1.8",
-                "ext-pdo": "*",
-                "ext-phar": "*",
-                "phpunit/phpunit": "~4.0",
-                "squizlabs/php_codesniffer": "2.0.*@ALPHA"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.0.x-dev"
-                }
-            },
-            "autoload": {
-                "psr-0": {
-                    "Doctrine\\Instantiator\\": "src"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Marco Pivetta",
-                    "email": "ocramius@gmail.com",
-                    "homepage": "http://ocramius.github.com/"
-                }
-            ],
-            "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
-            "homepage": "https://github.com/doctrine/instantiator",
-            "keywords": [
-                "constructor",
-                "instantiate"
-            ],
-            "time": "2014-10-13 12:58:55"
-        },
-        {
             "name": "doctrine/lexer",
             "version": "v1.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/doctrine/lexer.git",
-                "reference": "v1.0"
+                "reference": "2f708a85bb3aab5d99dab8be435abd73e0b18acb"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://github.com/doctrine/lexer/archive/v1.0.zip",
-                "reference": "v1.0",
+                "url": "https://api.github.com/repos/doctrine/lexer/zipball/2f708a85bb3aab5d99dab8be435abd73e0b18acb",
+                "reference": "2f708a85bb3aab5d99dab8be435abd73e0b18acb",
                 "shasum": ""
             },
             "require": {
@@ -444,7 +391,7 @@
                     "email": "roman@code-factory.org"
                 },
                 {
-                    "name": "Johannes M. Schmitt",
+                    "name": "Johannes Schmitt",
                     "email": "schmittjoh@gmail.com",
                     "homepage": "https://github.com/schmittjoh",
                     "role": "Developer of wrapped JMSSerializerBundle"
@@ -518,16 +465,16 @@
         },
         {
             "name": "egulias/email-validator",
-            "version": "1.2.2",
+            "version": "1.2.5",
             "source": {
                 "type": "git",
                 "url": "https://github.com/egulias/EmailValidator.git",
-                "reference": "39b451bb2bb0655d83d82a38a0bba7189298cfc5"
+                "reference": "518f80a0ff7c1a35780e7702f4262c8c6f2b807f"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/39b451bb2bb0655d83d82a38a0bba7189298cfc5",
-                "reference": "39b451bb2bb0655d83d82a38a0bba7189298cfc5",
+                "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/518f80a0ff7c1a35780e7702f4262c8c6f2b807f",
+                "reference": "518f80a0ff7c1a35780e7702f4262c8c6f2b807f",
                 "shasum": ""
             },
             "require": {
@@ -540,7 +487,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.0.x-dev"
+                    "dev-master": "1.3.x-dev"
                 }
             },
             "autoload": {
@@ -564,7 +511,7 @@
                 "validation",
                 "validator"
             ],
-            "time": "2014-09-01 22:35:48"
+            "time": "2014-11-06 08:59:44"
         },
         {
             "name": "guzzlehttp/guzzle",
@@ -626,16 +573,16 @@
         },
         {
             "name": "guzzlehttp/ringphp",
-            "version": "1.0.0",
+            "version": "1.0.3",
             "source": {
                 "type": "git",
                 "url": "https://github.com/guzzle/RingPHP.git",
-                "reference": "9e44b565d726d9614cd970319e6eea70ee15bff3"
+                "reference": "e7c28f96c5ac12ab0e63412cfc15989756fcb964"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/guzzle/RingPHP/zipball/9e44b565d726d9614cd970319e6eea70ee15bff3",
-                "reference": "9e44b565d726d9614cd970319e6eea70ee15bff3",
+                "url": "https://api.github.com/repos/guzzle/RingPHP/zipball/e7c28f96c5ac12ab0e63412cfc15989756fcb964",
+                "reference": "e7c28f96c5ac12ab0e63412cfc15989756fcb964",
                 "shasum": ""
             },
             "require": {
@@ -672,7 +619,7 @@
                     "homepage": "https://github.com/mtdowling"
                 }
             ],
-            "time": "2014-10-13 00:59:38"
+            "time": "2014-11-04 07:01:14"
         },
         {
             "name": "guzzlehttp/streams",
@@ -1011,16 +958,16 @@
         },
         {
             "name": "phpunit/phpunit",
-            "version": "4.1.4",
+            "version": "4.1.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/phpunit.git",
-                "reference": "a71c4842c5fb836d8b200624583b859ec34e8a26"
+                "reference": "241116219bb7e3b8111a36ffd8f37546888738d6"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a71c4842c5fb836d8b200624583b859ec34e8a26",
-                "reference": "a71c4842c5fb836d8b200624583b859ec34e8a26",
+                "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/241116219bb7e3b8111a36ffd8f37546888738d6",
+                "reference": "241116219bb7e3b8111a36ffd8f37546888738d6",
                 "shasum": ""
             },
             "require": {
@@ -1034,7 +981,7 @@
                 "phpunit/php-file-iterator": "~1.3.1",
                 "phpunit/php-text-template": "~1.2",
                 "phpunit/php-timer": "~1.0.2",
-                "phpunit/phpunit-mock-objects": "~2.1",
+                "phpunit/phpunit-mock-objects": "2.1.5",
                 "sebastian/comparator": "~1.0",
                 "sebastian/diff": "~1.1",
                 "sebastian/environment": "~1.0",
@@ -1081,29 +1028,28 @@
                 "testing",
                 "xunit"
             ],
-            "time": "2014-07-18 07:15:58"
+            "time": "2014-08-17 08:07:02"
         },
         {
             "name": "phpunit/phpunit-mock-objects",
-            "version": "dev-master",
+            "version": "2.1.5",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
-                "reference": "e60bb929c50ae4237aaf680a4f6773f4ee17f0a2"
+                "reference": "7878b9c41edb3afab92b85edf5f0981014a2713a"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/96c5b81f9842f38fe6c73ad0020306cc4862a9e3",
-                "reference": "e60bb929c50ae4237aaf680a4f6773f4ee17f0a2",
+                "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/7878b9c41edb3afab92b85edf5f0981014a2713a",
+                "reference": "7878b9c41edb3afab92b85edf5f0981014a2713a",
                 "shasum": ""
             },
             "require": {
-                "doctrine/instantiator": "~1.0,>=1.0.2",
                 "php": ">=5.3.3",
                 "phpunit/php-text-template": "~1.2"
             },
             "require-dev": {
-                "phpunit/phpunit": "4.4.*@dev"
+                "phpunit/phpunit": "~4.1"
             },
             "suggest": {
                 "ext-soap": "*"
@@ -1111,7 +1057,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "2.4.x-dev"
+                    "dev-master": "2.1.x-dev"
                 }
             },
             "autoload": {
@@ -1120,6 +1066,9 @@
                 ]
             },
             "notification-url": "https://packagist.org/downloads/",
+            "include-path": [
+                ""
+            ],
             "license": [
                 "BSD-3-Clause"
             ],
@@ -1136,20 +1085,20 @@
                 "mock",
                 "xunit"
             ],
-            "time": "2014-10-04 10:04:20"
+            "time": "2014-06-12 07:22:15"
         },
         {
             "name": "psr/log",
             "version": "1.0.0",
             "source": {
                 "type": "git",
-                "url": "https://github.com/php-fig/log",
-                "reference": "1.0.0"
+                "url": "https://github.com/php-fig/log.git",
+                "reference": "fe0936ee26643249e916849d48e3a51d5f5e278b"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://github.com/php-fig/log/archive/1.0.0.zip",
-                "reference": "1.0.0",
+                "url": "https://api.github.com/repos/php-fig/log/zipball/fe0936ee26643249e916849d48e3a51d5f5e278b",
+                "reference": "fe0936ee26643249e916849d48e3a51d5f5e278b",
                 "shasum": ""
             },
             "type": "library",
@@ -1386,16 +1335,16 @@
         },
         {
             "name": "sebastian/environment",
-            "version": "1.1.0",
+            "version": "1.2.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/environment.git",
-                "reference": "6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7"
+                "reference": "0d9bf79554d2a999da194a60416c15cf461eb67d"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7",
-                "reference": "6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7",
+                "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/0d9bf79554d2a999da194a60416c15cf461eb67d",
+                "reference": "0d9bf79554d2a999da194a60416c15cf461eb67d",
                 "shasum": ""
             },
             "require": {
@@ -1407,7 +1356,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.1.x-dev"
+                    "dev-master": "1.2.x-dev"
                 }
             },
             "autoload": {
@@ -1432,7 +1381,7 @@
                 "environment",
                 "hhvm"
             ],
-            "time": "2014-10-07 09:23:16"
+            "time": "2014-10-22 06:38:05"
         },
         {
             "name": "sebastian/exporter",
@@ -1643,17 +1592,17 @@
         },
         {
             "name": "symfony/class-loader",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/ClassLoader",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/ClassLoader.git",
-                "reference": "432561f655123b003b32f370ca812fed9a9340c6"
+                "reference": "174f30f12a2e9235d79399699bd0dce4f044a9ab"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/432561f655123b003b32f370ca812fed9a9340c6",
-                "reference": "432561f655123b003b32f370ca812fed9a9340c6",
+                "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/174f30f12a2e9235d79399699bd0dce4f044a9ab",
+                "reference": "174f30f12a2e9235d79399699bd0dce4f044a9ab",
                 "shasum": ""
             },
             "require": {
@@ -1689,21 +1638,21 @@
             ],
             "description": "Symfony ClassLoader Component",
             "homepage": "http://symfony.com",
-            "time": "2014-09-22 09:14:18"
+            "time": "2014-10-01 05:50:18"
         },
         {
             "name": "symfony/css-selector",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/CssSelector",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/CssSelector.git",
-                "reference": "caf5ecc3face1f22884fb74b8edab65ac5ba9976"
+                "reference": "7cdf543a3f31935aae58de4e6e607d4bdeb3f5dc"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/CssSelector/zipball/caf5ecc3face1f22884fb74b8edab65ac5ba9976",
-                "reference": "caf5ecc3face1f22884fb74b8edab65ac5ba9976",
+                "url": "https://api.github.com/repos/symfony/CssSelector/zipball/7cdf543a3f31935aae58de4e6e607d4bdeb3f5dc",
+                "reference": "7cdf543a3f31935aae58de4e6e607d4bdeb3f5dc",
                 "shasum": ""
             },
             "require": {
@@ -1740,21 +1689,21 @@
             ],
             "description": "Symfony CssSelector Component",
             "homepage": "http://symfony.com",
-            "time": "2014-09-22 09:14:18"
+            "time": "2014-10-09 16:00:03"
         },
         {
             "name": "symfony/debug",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/Debug",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Debug.git",
-                "reference": "4a3dd4ef3fc0cee2fd9faaae12bd7af43afcf648"
+                "reference": "2538d5099b9728b6ca09b261566a766f4f847459"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Debug/zipball/4a3dd4ef3fc0cee2fd9faaae12bd7af43afcf648",
-                "reference": "4a3dd4ef3fc0cee2fd9faaae12bd7af43afcf648",
+                "url": "https://api.github.com/repos/symfony/Debug/zipball/2538d5099b9728b6ca09b261566a766f4f847459",
+                "reference": "2538d5099b9728b6ca09b261566a766f4f847459",
                 "shasum": ""
             },
             "require": {
@@ -1795,21 +1744,21 @@
             ],
             "description": "Symfony Debug Component",
             "homepage": "http://symfony.com",
-            "time": "2014-09-28 15:22:14"
+            "time": "2014-10-24 05:49:22"
         },
         {
             "name": "symfony/dependency-injection",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/DependencyInjection",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/DependencyInjection.git",
-                "reference": "1f01a64c9047909e40700a14ee34e8c446300618"
+                "reference": "fb40e4ea115d331346fbbc4da8f42825e524c7a0"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/1f01a64c9047909e40700a14ee34e8c446300618",
-                "reference": "1f01a64c9047909e40700a14ee34e8c446300618",
+                "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/fb40e4ea115d331346fbbc4da8f42825e524c7a0",
+                "reference": "fb40e4ea115d331346fbbc4da8f42825e524c7a0",
                 "shasum": ""
             },
             "require": {
@@ -1852,21 +1801,21 @@
             ],
             "description": "Symfony DependencyInjection Component",
             "homepage": "http://symfony.com",
-            "time": "2014-09-27 08:35:39"
+            "time": "2014-10-01 05:50:18"
         },
         {
             "name": "symfony/event-dispatcher",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/EventDispatcher",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/EventDispatcher.git",
-                "reference": "f6281337bf5f985f585d1db6a83adb05ce531f46"
+                "reference": "804eb28dbbfba9ffdab21fe2066744906cea2212"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/f6281337bf5f985f585d1db6a83adb05ce531f46",
-                "reference": "f6281337bf5f985f585d1db6a83adb05ce531f46",
+                "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/804eb28dbbfba9ffdab21fe2066744906cea2212",
+                "reference": "804eb28dbbfba9ffdab21fe2066744906cea2212",
                 "shasum": ""
             },
             "require": {
@@ -1909,21 +1858,21 @@
             ],
             "description": "Symfony EventDispatcher Component",
             "homepage": "http://symfony.com",
-            "time": "2014-09-28 15:56:11"
+            "time": "2014-10-01 15:43:05"
         },
         {
             "name": "symfony/http-foundation",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/HttpFoundation",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/HttpFoundation.git",
-                "reference": "650e115af152d7a5e857d01c2cdb9a22809de9b4"
+                "reference": "56111fc8ba8bcad93d367532babecc6ce17f66ce"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/650e115af152d7a5e857d01c2cdb9a22809de9b4",
-                "reference": "650e115af152d7a5e857d01c2cdb9a22809de9b4",
+                "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/56111fc8ba8bcad93d367532babecc6ce17f66ce",
+                "reference": "56111fc8ba8bcad93d367532babecc6ce17f66ce",
                 "shasum": ""
             },
             "require": {
@@ -1962,21 +1911,21 @@
             ],
             "description": "Symfony HttpFoundation Component",
             "homepage": "http://symfony.com",
-            "time": "2014-09-25 09:52:29"
+            "time": "2014-10-24 05:49:22"
         },
         {
             "name": "symfony/http-kernel",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/HttpKernel",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/HttpKernel.git",
-                "reference": "6a3595611229def14d5e644f060cf372235532ec"
+                "reference": "cf8f6935f383cf5501499fef7677c36d4205e398"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/6a3595611229def14d5e644f060cf372235532ec",
-                "reference": "6a3595611229def14d5e644f060cf372235532ec",
+                "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/cf8f6935f383cf5501499fef7677c36d4205e398",
+                "reference": "cf8f6935f383cf5501499fef7677c36d4205e398",
                 "shasum": ""
             },
             "require": {
@@ -2034,68 +1983,21 @@
             ],
             "description": "Symfony HttpKernel Component",
             "homepage": "http://symfony.com",
-            "time": "2014-09-28 17:33:53"
-        },
-        {
-            "name": "symfony/process",
-            "version": "v2.5.5",
-            "target-dir": "Symfony/Component/Process",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/symfony/Process.git",
-                "reference": "8a1ec96c4e519cee0fb971ea48a1eb7369dda54b"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Process/zipball/8a1ec96c4e519cee0fb971ea48a1eb7369dda54b",
-                "reference": "8a1ec96c4e519cee0fb971ea48a1eb7369dda54b",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.3"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "2.5-dev"
-                }
-            },
-            "autoload": {
-                "psr-0": {
-                    "Symfony\\Component\\Process\\": ""
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Symfony Community",
-                    "homepage": "http://symfony.com/contributors"
-                },
-                {
-                    "name": "Fabien Potencier",
-                    "email": "fabien@symfony.com"
-                }
-            ],
-            "description": "Symfony Process Component",
-            "homepage": "http://symfony.com",
-            "time": "2014-09-23 05:25:11"
+            "time": "2014-10-24 06:55:39"
         },
         {
             "name": "symfony/routing",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/Routing",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Routing.git",
-                "reference": "9bc38fe72e0eff61611e7cd4df3accbce20b1d36"
+                "reference": "c7e381f571aac1de9e06f2bac2097984c543096a"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Routing/zipball/9bc38fe72e0eff61611e7cd4df3accbce20b1d36",
-                "reference": "9bc38fe72e0eff61611e7cd4df3accbce20b1d36",
+                "url": "https://api.github.com/repos/symfony/Routing/zipball/c7e381f571aac1de9e06f2bac2097984c543096a",
+                "reference": "c7e381f571aac1de9e06f2bac2097984c543096a",
                 "shasum": ""
             },
             "require": {
@@ -2148,11 +2050,11 @@
                 "uri",
                 "url"
             ],
-            "time": "2014-09-22 15:28:36"
+            "time": "2014-10-24 05:49:22"
         },
         {
             "name": "symfony/serializer",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/Serializer",
             "source": {
                 "type": "git",
@@ -2199,17 +2101,17 @@
         },
         {
             "name": "symfony/translation",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/Translation",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Translation.git",
-                "reference": "170c0d895616e1a6a35681ffb0b9e339f58ab928"
+                "reference": "362fe4da2cfe587f72d57aaa2f89e6b61c05dedf"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Translation/zipball/170c0d895616e1a6a35681ffb0b9e339f58ab928",
-                "reference": "170c0d895616e1a6a35681ffb0b9e339f58ab928",
+                "url": "https://api.github.com/repos/symfony/Translation/zipball/362fe4da2cfe587f72d57aaa2f89e6b61c05dedf",
+                "reference": "362fe4da2cfe587f72d57aaa2f89e6b61c05dedf",
                 "shasum": ""
             },
             "require": {
@@ -2251,21 +2153,21 @@
             ],
             "description": "Symfony Translation Component",
             "homepage": "http://symfony.com",
-            "time": "2014-09-23 05:25:11"
+            "time": "2014-10-01 05:50:18"
         },
         {
             "name": "symfony/validator",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/Validator",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Validator.git",
-                "reference": "64f61505843ca5e6c647244f5a4b6812c1279427"
+                "reference": "a3a2140520fbb47d98d23b78521a383073312a1c"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Validator/zipball/64f61505843ca5e6c647244f5a4b6812c1279427",
-                "reference": "64f61505843ca5e6c647244f5a4b6812c1279427",
+                "url": "https://api.github.com/repos/symfony/Validator/zipball/a3a2140520fbb47d98d23b78521a383073312a1c",
+                "reference": "a3a2140520fbb47d98d23b78521a383073312a1c",
                 "shasum": ""
             },
             "require": {
@@ -2321,7 +2223,7 @@
             ],
             "description": "Symfony Validator Component",
             "homepage": "http://symfony.com",
-            "time": "2014-09-28 15:22:14"
+            "time": "2014-10-01 05:50:18"
         },
         {
             "name": "symfony/yaml",
@@ -2334,7 +2236,7 @@
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Yaml/zipball/499f7d7aa96747ad97940089bd7a1fb24ad8182a",
+                "url": "https://api.github.com/repos/symfony/Yaml/zipball/0887d52700bf27f99ca400c5e7385275299c0928",
                 "reference": "499f7d7aa96747ad97940089bd7a1fb24ad8182a",
                 "shasum": ""
             },
@@ -2344,7 +2246,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "2.6-dev"
+                    "dev-master": "3.0-dev"
                 }
             },
             "autoload": {
@@ -2368,19 +2270,19 @@
             ],
             "description": "Symfony Yaml Component",
             "homepage": "http://symfony.com",
-            "time": "2014-10-05 13:53:50"
+            "time": "2014-11-11 08:37:22"
         },
         {
             "name": "twig/twig",
             "version": "v1.16.2",
             "source": {
                 "type": "git",
-                "url": "https://github.com/fabpot/Twig.git",
+                "url": "https://github.com/twigphp/Twig.git",
                 "reference": "42f758d9fe2146d1f0470604fc05ee43580873fc"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/fabpot/Twig/zipball/42f758d9fe2146d1f0470604fc05ee43580873fc",
+                "url": "https://api.github.com/repos/twigphp/Twig/zipball/42f758d9fe2146d1f0470604fc05ee43580873fc",
                 "reference": "42f758d9fe2146d1f0470604fc05ee43580873fc",
                 "shasum": ""
             },
@@ -2561,12 +2463,17 @@
         }
     ],
     "packages-dev": [],
-    "aliases": [],
+    "aliases": [
+        {
+            "alias": "2.5.0",
+            "alias_normalized": "2.5.0.0",
+            "version": "9999999-dev",
+            "package": "symfony/yaml"
+        }
+    ],
     "minimum-stability": "stable",
     "stability-flags": {
-        "symfony/yaml": 20,
-        "doctrine/common": 20,
-        "phpunit/phpunit-mock-objects": 20
+        "symfony/yaml": 20
     },
     "prefer-stable": false,
     "platform": {
diff --git a/core/vendor/composer/autoload_classmap.php b/core/vendor/composer/autoload_classmap.php
index 670145c..cba9233 100644
--- a/core/vendor/composer/autoload_classmap.php
+++ b/core/vendor/composer/autoload_classmap.php
@@ -87,6 +87,7 @@
     'PHPUnit_Framework_MockObject_Matcher' => $vendorDir . '/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher.php',
     'PHPUnit_Framework_MockObject_Matcher_AnyInvokedCount' => $vendorDir . '/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/AnyInvokedCount.php',
     'PHPUnit_Framework_MockObject_Matcher_AnyParameters' => $vendorDir . '/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/AnyParameters.php',
+    'PHPUnit_Framework_MockObject_Matcher_ConsecutiveParameters' => $vendorDir . '/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/ConsecutiveParameters.php',
     'PHPUnit_Framework_MockObject_Matcher_Invocation' => $vendorDir . '/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/Invocation.php',
     'PHPUnit_Framework_MockObject_Matcher_InvokedAtIndex' => $vendorDir . '/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/InvokedAtIndex.php',
     'PHPUnit_Framework_MockObject_Matcher_InvokedAtLeastOnce' => $vendorDir . '/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/InvokedAtLeastOnce.php',
diff --git a/core/vendor/composer/autoload_namespaces.php b/core/vendor/composer/autoload_namespaces.php
index 54e2998..708d6ba 100644
--- a/core/vendor/composer/autoload_namespaces.php
+++ b/core/vendor/composer/autoload_namespaces.php
@@ -16,7 +16,6 @@
     'Symfony\\Component\\Translation\\' => array($vendorDir . '/symfony/translation'),
     'Symfony\\Component\\Serializer\\' => array($vendorDir . '/symfony/serializer'),
     'Symfony\\Component\\Routing\\' => array($vendorDir . '/symfony/routing'),
-    'Symfony\\Component\\Process\\' => array($vendorDir . '/symfony/process'),
     'Symfony\\Component\\HttpKernel\\' => array($vendorDir . '/symfony/http-kernel'),
     'Symfony\\Component\\HttpFoundation\\' => array($vendorDir . '/symfony/http-foundation'),
     'Symfony\\Component\\EventDispatcher\\' => array($vendorDir . '/symfony/event-dispatcher'),
@@ -29,7 +28,6 @@
     'Gliph' => array($vendorDir . '/sdboyer/gliph/src'),
     'Egulias\\' => array($vendorDir . '/egulias/email-validator/src'),
     'EasyRdf_' => array($vendorDir . '/easyrdf/easyrdf/lib'),
-    'Doctrine\\Instantiator\\' => array($vendorDir . '/doctrine/instantiator/src'),
     'Doctrine\\Common\\Lexer\\' => array($vendorDir . '/doctrine/lexer/lib'),
     'Doctrine\\Common\\Inflector\\' => array($vendorDir . '/doctrine/inflector/lib'),
     'Doctrine\\Common\\Collections\\' => array($vendorDir . '/doctrine/collections/lib'),
diff --git a/core/vendor/composer/include_paths.php b/core/vendor/composer/include_paths.php
index b43900a..e5cfb0c 100644
--- a/core/vendor/composer/include_paths.php
+++ b/core/vendor/composer/include_paths.php
@@ -7,6 +7,7 @@
 
 return array(
     $vendorDir . '/phpunit/php-text-template',
+    $vendorDir . '/phpunit/phpunit-mock-objects',
     $vendorDir . '/phpunit/php-timer',
     $vendorDir . '/phpunit/php-file-iterator',
     $vendorDir . '/phpunit/php-code-coverage',
diff --git a/core/vendor/composer/installed.json b/core/vendor/composer/installed.json
index 06b603a..199346e 100644
--- a/core/vendor/composer/installed.json
+++ b/core/vendor/composer/installed.json
@@ -1,28 +1,34 @@
 [
     {
-        "name": "doctrine/lexer",
-        "version": "v1.0",
-        "version_normalized": "1.0.0.0",
+        "name": "symfony/yaml",
+        "version": "dev-master",
+        "version_normalized": "9999999-dev",
+        "target-dir": "Symfony/Component/Yaml",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/lexer.git",
-            "reference": "v1.0"
+            "url": "https://github.com/symfony/Yaml.git",
+            "reference": "499f7d7aa96747ad97940089bd7a1fb24ad8182a"
         },
         "dist": {
             "type": "zip",
-            "url": "https://github.com/doctrine/lexer/archive/v1.0.zip",
-            "reference": "v1.0",
+            "url": "https://api.github.com/repos/symfony/Yaml/zipball/0887d52700bf27f99ca400c5e7385275299c0928",
+            "reference": "499f7d7aa96747ad97940089bd7a1fb24ad8182a",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.2"
+            "php": ">=5.3.3"
         },
-        "time": "2013-01-12 18:59:04",
+        "time": "2014-11-11 08:37:22",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "3.0-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Doctrine\\Common\\Lexer\\": "lib/"
+                "Symfony\\Component\\Yaml\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -31,52 +37,38 @@
         ],
         "authors": [
             {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com",
-                "homepage": "http://www.instaclick.com"
-            },
-            {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
             },
             {
-                "name": "Johannes M. Schmitt",
-                "email": "schmittjoh@gmail.com",
-                "homepage": "https://github.com/schmittjoh",
-                "role": "Developer of wrapped JMSSerializerBundle"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             }
         ],
-        "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "lexer",
-            "parser"
-        ]
+        "description": "Symfony Yaml Component",
+        "homepage": "http://symfony.com"
     },
     {
-        "name": "doctrine/inflector",
-        "version": "v1.0",
+        "name": "psr/log",
+        "version": "1.0.0",
         "version_normalized": "1.0.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/inflector.git",
-            "reference": "v1.0"
+            "url": "https://github.com/php-fig/log.git",
+            "reference": "fe0936ee26643249e916849d48e3a51d5f5e278b"
         },
         "dist": {
             "type": "zip",
-            "url": "https://github.com/doctrine/inflector/archive/v1.0.zip",
-            "reference": "v1.0",
+            "url": "https://api.github.com/repos/php-fig/log/zipball/fe0936ee26643249e916849d48e3a51d5f5e278b",
+            "reference": "fe0936ee26643249e916849d48e3a51d5f5e278b",
             "shasum": ""
         },
-        "require": {
-            "php": ">=5.3.2"
-        },
-        "time": "2013-01-10 21:49:15",
+        "time": "2012-12-21 11:40:51",
         "type": "library",
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Doctrine\\Common\\Inflector\\": "lib/"
+                "Psr\\Log\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -85,68 +77,55 @@
         ],
         "authors": [
             {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com",
-                "homepage": "http://www.jwage.com/"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com",
-                "homepage": "http://www.instaclick.com"
-            },
-            {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Johannes M. Schmitt",
-                "email": "schmittjoh@gmail.com",
-                "homepage": "https://github.com/schmittjoh",
-                "role": "Developer of wrapped JMSSerializerBundle"
+                "name": "PHP-FIG",
+                "homepage": "http://www.php-fig.org/"
             }
         ],
-        "description": "Common String Manipulations with regard to casing and singular/plural rules.",
-        "homepage": "http://www.doctrine-project.org",
+        "description": "Common interface for logging libraries",
         "keywords": [
-            "inflection",
-            "pluarlize",
-            "singuarlize",
-            "string"
+            "log",
+            "psr",
+            "psr-3"
         ]
     },
     {
-        "name": "doctrine/collections",
-        "version": "v1.2",
-        "version_normalized": "1.2.0.0",
+        "name": "symfony/debug",
+        "version": "v2.5.6",
+        "version_normalized": "2.5.6.0",
+        "target-dir": "Symfony/Component/Debug",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/collections.git",
-            "reference": "b99c5c46c87126201899afe88ec490a25eedd6a2"
+            "url": "https://github.com/symfony/Debug.git",
+            "reference": "2538d5099b9728b6ca09b261566a766f4f847459"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/collections/zipball/b99c5c46c87126201899afe88ec490a25eedd6a2",
-            "reference": "b99c5c46c87126201899afe88ec490a25eedd6a2",
+            "url": "https://api.github.com/repos/symfony/Debug/zipball/2538d5099b9728b6ca09b261566a766f4f847459",
+            "reference": "2538d5099b9728b6ca09b261566a766f4f847459",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.2"
+            "php": ">=5.3.3"
         },
-        "time": "2014-02-03 23:07:43",
+        "require-dev": {
+            "symfony/http-foundation": "~2.1",
+            "symfony/http-kernel": "~2.1"
+        },
+        "suggest": {
+            "symfony/http-foundation": "",
+            "symfony/http-kernel": ""
+        },
+        "time": "2014-10-24 05:49:22",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.2.x-dev"
+                "dev-master": "2.5-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Doctrine\\Common\\Collections\\": "lib/"
+                "Symfony\\Component\\Debug\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -155,76 +134,54 @@
         ],
         "authors": [
             {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com",
-                "homepage": "http://www.jwage.com/",
-                "role": "Creator"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com",
-                "homepage": "http://www.instaclick.com"
-            },
-            {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
             },
             {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com",
-                "homepage": "https://github.com/schmittjoh",
-                "role": "Developer of wrapped JMSSerializerBundle"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             }
         ],
-        "description": "Collections Abstraction library",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "array",
-            "collections",
-            "iterator"
-        ]
+        "description": "Symfony Debug Component",
+        "homepage": "http://symfony.com"
     },
     {
-        "name": "doctrine/cache",
-        "version": "v1.3.1",
-        "version_normalized": "1.3.1.0",
+        "name": "symfony/http-foundation",
+        "version": "v2.5.6",
+        "version_normalized": "2.5.6.0",
+        "target-dir": "Symfony/Component/HttpFoundation",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/cache.git",
-            "reference": "cf483685798a72c93bf4206e3dd6358ea07d64e7"
+            "url": "https://github.com/symfony/HttpFoundation.git",
+            "reference": "56111fc8ba8bcad93d367532babecc6ce17f66ce"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/cache/zipball/cf483685798a72c93bf4206e3dd6358ea07d64e7",
-            "reference": "cf483685798a72c93bf4206e3dd6358ea07d64e7",
+            "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/56111fc8ba8bcad93d367532babecc6ce17f66ce",
+            "reference": "56111fc8ba8bcad93d367532babecc6ce17f66ce",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.2"
-        },
-        "conflict": {
-            "doctrine/common": ">2.2,<2.4"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "phpunit/phpunit": ">=3.7",
-            "satooshi/php-coveralls": "~0.6"
+            "symfony/expression-language": "~2.4"
         },
-        "time": "2014-09-17 14:24:04",
+        "time": "2014-10-24 05:49:22",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.4.x-dev"
+                "dev-master": "2.5-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Doctrine\\Common\\Cache\\": "lib/"
-            }
+                "Symfony\\Component\\HttpFoundation\\": ""
+            },
+            "classmap": [
+                "Symfony/Component/HttpFoundation/Resources/stubs"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
@@ -232,67 +189,57 @@
         ],
         "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com"
-            },
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com"
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
             },
             {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             }
         ],
-        "description": "Caching library offering an object-oriented API for many cache backends",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "cache",
-            "caching"
-        ]
+        "description": "Symfony HttpFoundation Component",
+        "homepage": "http://symfony.com"
     },
     {
-        "name": "doctrine/annotations",
-        "version": "v1.2.1",
-        "version_normalized": "1.2.1.0",
+        "name": "symfony/event-dispatcher",
+        "version": "v2.5.6",
+        "version_normalized": "2.5.6.0",
+        "target-dir": "Symfony/Component/EventDispatcher",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/annotations.git",
-            "reference": "6a6bec0670bb6e71a263b08bc1b98ea242928633"
+            "url": "https://github.com/symfony/EventDispatcher.git",
+            "reference": "804eb28dbbfba9ffdab21fe2066744906cea2212"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/annotations/zipball/6a6bec0670bb6e71a263b08bc1b98ea242928633",
-            "reference": "6a6bec0670bb6e71a263b08bc1b98ea242928633",
+            "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/804eb28dbbfba9ffdab21fe2066744906cea2212",
+            "reference": "804eb28dbbfba9ffdab21fe2066744906cea2212",
             "shasum": ""
         },
         "require": {
-            "doctrine/lexer": "1.*",
-            "php": ">=5.3.2"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "doctrine/cache": "1.*",
-            "phpunit/phpunit": "4.*"
+            "psr/log": "~1.0",
+            "symfony/config": "~2.0",
+            "symfony/dependency-injection": "~2.0,<2.6.0",
+            "symfony/stopwatch": "~2.2"
         },
-        "time": "2014-09-25 16:45:30",
+        "suggest": {
+            "symfony/dependency-injection": "",
+            "symfony/http-kernel": ""
+        },
+        "time": "2014-10-01 15:43:05",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.3.x-dev"
+                "dev-master": "2.5-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Doctrine\\Common\\Annotations\\": "lib/"
+                "Symfony\\Component\\EventDispatcher\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -301,71 +248,72 @@
         ],
         "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com"
-            },
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com"
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
             },
             {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             }
         ],
-        "description": "Docblock Annotations Parser",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "annotations",
-            "docblock",
-            "parser"
-        ]
+        "description": "Symfony EventDispatcher Component",
+        "homepage": "http://symfony.com"
     },
     {
-        "name": "doctrine/common",
-        "version": "dev-master",
-        "version_normalized": "9999999-dev",
+        "name": "symfony/http-kernel",
+        "version": "v2.5.6",
+        "version_normalized": "2.5.6.0",
+        "target-dir": "Symfony/Component/HttpKernel",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/common.git",
-            "reference": "a45d110f71c323e29f41eb0696fa230e3fa1b1b5"
+            "url": "https://github.com/symfony/HttpKernel.git",
+            "reference": "cf8f6935f383cf5501499fef7677c36d4205e398"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/common/zipball/a45d110f71c323e29f41eb0696fa230e3fa1b1b5",
-            "reference": "a45d110f71c323e29f41eb0696fa230e3fa1b1b5",
+            "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/cf8f6935f383cf5501499fef7677c36d4205e398",
+            "reference": "cf8f6935f383cf5501499fef7677c36d4205e398",
             "shasum": ""
         },
         "require": {
-            "doctrine/annotations": "1.*",
-            "doctrine/cache": "1.*",
-            "doctrine/collections": "1.*",
-            "doctrine/inflector": "1.*",
-            "doctrine/lexer": "1.*",
-            "php": ">=5.3.2"
+            "php": ">=5.3.3",
+            "psr/log": "~1.0",
+            "symfony/debug": "~2.5",
+            "symfony/event-dispatcher": "~2.5",
+            "symfony/http-foundation": "~2.5"
         },
         "require-dev": {
-            "phpunit/phpunit": "~3.7"
+            "symfony/browser-kit": "~2.2",
+            "symfony/class-loader": "~2.1",
+            "symfony/config": "~2.0",
+            "symfony/console": "~2.2",
+            "symfony/dependency-injection": "~2.0",
+            "symfony/expression-language": "~2.4",
+            "symfony/finder": "~2.0",
+            "symfony/process": "~2.0",
+            "symfony/routing": "~2.2",
+            "symfony/stopwatch": "~2.2",
+            "symfony/templating": "~2.2"
+        },
+        "suggest": {
+            "symfony/browser-kit": "",
+            "symfony/class-loader": "",
+            "symfony/config": "",
+            "symfony/console": "",
+            "symfony/dependency-injection": "",
+            "symfony/finder": ""
         },
-        "time": "2014-01-12 22:00:08",
+        "time": "2014-10-24 06:55:39",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5.x-dev"
+                "dev-master": "2.5-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Doctrine\\Common\\": "lib/"
+                "Symfony\\Component\\HttpKernel\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -374,39 +322,143 @@
         ],
         "authors": [
             {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com",
-                "homepage": "http://www.jwage.com/",
-                "role": "Creator"
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
             },
             {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com",
-                "homepage": "http://www.instaclick.com"
-            },
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            }
+        ],
+        "description": "Symfony HttpKernel Component",
+        "homepage": "http://symfony.com"
+    },
+    {
+        "name": "symfony/routing",
+        "version": "v2.5.6",
+        "version_normalized": "2.5.6.0",
+        "target-dir": "Symfony/Component/Routing",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/symfony/Routing.git",
+            "reference": "c7e381f571aac1de9e06f2bac2097984c543096a"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/symfony/Routing/zipball/c7e381f571aac1de9e06f2bac2097984c543096a",
+            "reference": "c7e381f571aac1de9e06f2bac2097984c543096a",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.3"
+        },
+        "require-dev": {
+            "doctrine/annotations": "~1.0",
+            "psr/log": "~1.0",
+            "symfony/config": "~2.2",
+            "symfony/expression-language": "~2.4",
+            "symfony/http-foundation": "~2.3",
+            "symfony/yaml": "~2.0"
+        },
+        "suggest": {
+            "doctrine/annotations": "For using the annotation loader",
+            "symfony/config": "For using the all-in-one router or any loader",
+            "symfony/expression-language": "For using expression matching",
+            "symfony/yaml": "For using the YAML loader"
+        },
+        "time": "2014-10-24 05:49:22",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.5-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "Symfony\\Component\\Routing\\": ""
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
             {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
             },
             {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            }
+        ],
+        "description": "Symfony Routing Component",
+        "homepage": "http://symfony.com",
+        "keywords": [
+            "router",
+            "routing",
+            "uri",
+            "url"
+        ]
+    },
+    {
+        "name": "symfony-cmf/routing",
+        "version": "1.3.0",
+        "version_normalized": "1.3.0.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/symfony-cmf/Routing.git",
+            "reference": "8e87981d72c6930a27585dcd3119f3199f6cb2a6"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/8e87981d72c6930a27585dcd3119f3199f6cb2a6",
+            "reference": "8e87981d72c6930a27585dcd3119f3199f6cb2a6",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.3",
+            "psr/log": "~1.0",
+            "symfony/http-kernel": "~2.2",
+            "symfony/routing": "~2.2"
+        },
+        "require-dev": {
+            "symfony/config": "~2.2",
+            "symfony/dependency-injection": "~2.0@stable",
+            "symfony/event-dispatcher": "~2.1"
+        },
+        "suggest": {
+            "symfony/event-dispatcher": "DynamicRouter can optionally trigger an event at the start of matching. Minimal version ~2.1"
+        },
+        "time": "2014-10-20 20:55:17",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.3-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-4": {
+                "Symfony\\Cmf\\Component\\Routing\\": ""
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
             {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com",
-                "homepage": "http://jmsyst.com",
-                "role": "Developer of wrapped JMSSerializerBundle"
+                "name": "Symfony CMF Community",
+                "homepage": "https://github.com/symfony-cmf/Routing/contributors"
             }
         ],
-        "description": "Common Library for Doctrine projects",
-        "homepage": "http://www.doctrine-project.org",
+        "description": "Extends the Symfony2 routing component for dynamic routes and chaining several routers",
+        "homepage": "http://cmf.symfony.com",
         "keywords": [
-            "annotations",
-            "collections",
-            "eventmanager",
-            "persistence",
-            "spl"
+            "database",
+            "routing"
         ]
     },
     {
@@ -470,38 +522,33 @@
         ]
     },
     {
-        "name": "egulias/email-validator",
-        "version": "1.2.2",
-        "version_normalized": "1.2.2.0",
+        "name": "sdboyer/gliph",
+        "version": "0.1.8",
+        "version_normalized": "0.1.8.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/egulias/EmailValidator.git",
-            "reference": "39b451bb2bb0655d83d82a38a0bba7189298cfc5"
+            "url": "https://github.com/sdboyer/gliph.git",
+            "reference": "db9e4b77622f91e2d338cc45f83c2cd0e3cf0e1e"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/39b451bb2bb0655d83d82a38a0bba7189298cfc5",
-            "reference": "39b451bb2bb0655d83d82a38a0bba7189298cfc5",
+            "url": "https://api.github.com/repos/sdboyer/gliph/zipball/db9e4b77622f91e2d338cc45f83c2cd0e3cf0e1e",
+            "reference": "db9e4b77622f91e2d338cc45f83c2cd0e3cf0e1e",
             "shasum": ""
         },
         "require": {
-            "doctrine/lexer": "~1.0",
-            "php": ">= 5.3.3"
+            "php": ">=5.3"
         },
         "require-dev": {
-            "satooshi/php-coveralls": "dev-master"
+            "phpunit/phpunit": "3.7.*",
+            "satooshi/php-coveralls": "0.6.*"
         },
-        "time": "2014-09-01 22:35:48",
+        "time": "2014-08-03 14:34:47",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.0.x-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Egulias\\": "src/"
+                "Gliph": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -510,50 +557,54 @@
         ],
         "authors": [
             {
-                "name": "Eduardo Gulias Davis"
+                "name": "Sam Boyer",
+                "email": "tech@samboyer.org"
             }
         ],
-        "description": "A library for validating emails",
-        "homepage": "https://github.com/egulias/EmailValidator",
+        "description": "A graph library for PHP.",
+        "homepage": "http://github.com/sdboyer/gliph",
         "keywords": [
-            "email",
-            "validation",
-            "validator"
+            "gliph",
+            "graph",
+            "library",
+            "php",
+            "spl"
         ]
     },
     {
-        "name": "react/promise",
-        "version": "v2.1.0",
-        "version_normalized": "2.1.0.0",
+        "name": "symfony/class-loader",
+        "version": "v2.5.6",
+        "version_normalized": "2.5.6.0",
+        "target-dir": "Symfony/Component/ClassLoader",
         "source": {
             "type": "git",
-            "url": "https://github.com/reactphp/promise.git",
-            "reference": "937b04f1b0ee8f6d180e75a0830aac778ca4bcd6"
+            "url": "https://github.com/symfony/ClassLoader.git",
+            "reference": "174f30f12a2e9235d79399699bd0dce4f044a9ab"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/reactphp/promise/zipball/937b04f1b0ee8f6d180e75a0830aac778ca4bcd6",
-            "reference": "937b04f1b0ee8f6d180e75a0830aac778ca4bcd6",
+            "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/174f30f12a2e9235d79399699bd0dce4f044a9ab",
+            "reference": "174f30f12a2e9235d79399699bd0dce4f044a9ab",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.4.0"
+            "php": ">=5.3.3"
         },
-        "time": "2014-10-15 20:05:57",
+        "require-dev": {
+            "symfony/finder": "~2.0"
+        },
+        "time": "2014-10-01 05:50:18",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.0-dev"
+                "dev-master": "2.5-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "React\\Promise\\": "src/"
-            },
-            "files": [
-                "src/functions.php"
-            ]
+            "psr-0": {
+                "Symfony\\Component\\ClassLoader\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
@@ -561,44 +612,47 @@
         ],
         "authors": [
             {
-                "name": "Jan Sorgalla",
-                "email": "jsorgalla@googlemail.com"
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
+            },
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             }
         ],
-        "description": "A lightweight implementation of CommonJS Promises/A for PHP"
+        "description": "Symfony ClassLoader Component",
+        "homepage": "http://symfony.com"
     },
     {
-        "name": "guzzlehttp/streams",
-        "version": "3.0.0",
-        "version_normalized": "3.0.0.0",
+        "name": "symfony/css-selector",
+        "version": "v2.5.6",
+        "version_normalized": "2.5.6.0",
+        "target-dir": "Symfony/Component/CssSelector",
         "source": {
             "type": "git",
-            "url": "https://github.com/guzzle/streams.git",
-            "reference": "47aaa48e27dae43d39fc1cea0ccf0d84ac1a2ba5"
+            "url": "https://github.com/symfony/CssSelector.git",
+            "reference": "7cdf543a3f31935aae58de4e6e607d4bdeb3f5dc"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/guzzle/streams/zipball/47aaa48e27dae43d39fc1cea0ccf0d84ac1a2ba5",
-            "reference": "47aaa48e27dae43d39fc1cea0ccf0d84ac1a2ba5",
+            "url": "https://api.github.com/repos/symfony/CssSelector/zipball/7cdf543a3f31935aae58de4e6e607d4bdeb3f5dc",
+            "reference": "7cdf543a3f31935aae58de4e6e607d4bdeb3f5dc",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.4.0"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "~4.0"
+            "php": ">=5.3.3"
         },
-        "time": "2014-10-12 19:18:40",
+        "time": "2014-10-09 16:00:03",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "3.0-dev"
+                "dev-master": "2.5-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "GuzzleHttp\\Stream\\": "src/"
+            "psr-0": {
+                "Symfony\\Component\\CssSelector\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -607,56 +661,61 @@
         ],
         "authors": [
             {
-                "name": "Michael Dowling",
-                "email": "mtdowling@gmail.com",
-                "homepage": "https://github.com/mtdowling"
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
+            },
+            {
+                "name": "Jean-François Simon",
+                "email": "jeanfrancois.simon@sensiolabs.com"
+            },
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             }
         ],
-        "description": "Provides a simple abstraction over streams of data",
-        "homepage": "http://guzzlephp.org/",
-        "keywords": [
-            "Guzzle",
-            "stream"
-        ]
+        "description": "Symfony CssSelector Component",
+        "homepage": "http://symfony.com"
     },
     {
-        "name": "guzzlehttp/ringphp",
-        "version": "1.0.0",
-        "version_normalized": "1.0.0.0",
+        "name": "symfony/dependency-injection",
+        "version": "v2.5.6",
+        "version_normalized": "2.5.6.0",
+        "target-dir": "Symfony/Component/DependencyInjection",
         "source": {
             "type": "git",
-            "url": "https://github.com/guzzle/RingPHP.git",
-            "reference": "9e44b565d726d9614cd970319e6eea70ee15bff3"
+            "url": "https://github.com/symfony/DependencyInjection.git",
+            "reference": "fb40e4ea115d331346fbbc4da8f42825e524c7a0"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/guzzle/RingPHP/zipball/9e44b565d726d9614cd970319e6eea70ee15bff3",
-            "reference": "9e44b565d726d9614cd970319e6eea70ee15bff3",
+            "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/fb40e4ea115d331346fbbc4da8f42825e524c7a0",
+            "reference": "fb40e4ea115d331346fbbc4da8f42825e524c7a0",
             "shasum": ""
         },
         "require": {
-            "guzzlehttp/streams": "~3.0",
-            "php": ">=5.4.0",
-            "react/promise": "~2.0"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "ext-curl": "*",
-            "phpunit/phpunit": "~4.0"
+            "symfony/config": "~2.2",
+            "symfony/expression-language": "~2.4",
+            "symfony/yaml": "~2.0"
         },
         "suggest": {
-            "ext-curl": "Guzzle will use specific adapters if cURL is present"
+            "symfony/config": "",
+            "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
+            "symfony/yaml": ""
         },
-        "time": "2014-10-13 00:59:38",
+        "time": "2014-10-01 05:50:18",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0-dev"
+                "dev-master": "2.5-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "GuzzleHttp\\Ring\\": "src/"
+            "psr-0": {
+                "Symfony\\Component\\DependencyInjection\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -665,133 +724,177 @@
         ],
         "authors": [
             {
-                "name": "Michael Dowling",
-                "email": "mtdowling@gmail.com",
-                "homepage": "https://github.com/mtdowling"
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
+            },
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             }
-        ]
+        ],
+        "description": "Symfony DependencyInjection Component",
+        "homepage": "http://symfony.com"
     },
     {
-        "name": "mikey179/vfsStream",
-        "version": "v1.4.0",
-        "version_normalized": "1.4.0.0",
+        "name": "symfony/serializer",
+        "version": "v2.5.6",
+        "version_normalized": "2.5.6.0",
+        "target-dir": "Symfony/Component/Serializer",
         "source": {
             "type": "git",
-            "url": "https://github.com/mikey179/vfsStream.git",
-            "reference": "61b12172292cf539685507aa65b076c1530e83c1"
+            "url": "https://github.com/symfony/Serializer.git",
+            "reference": "a95c0471682778da2e02169fb2644d3b08d4470f"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/mikey179/vfsStream/zipball/61b12172292cf539685507aa65b076c1530e83c1",
-            "reference": "61b12172292cf539685507aa65b076c1530e83c1",
+            "url": "https://api.github.com/repos/symfony/Serializer/zipball/a95c0471682778da2e02169fb2644d3b08d4470f",
+            "reference": "a95c0471682778da2e02169fb2644d3b08d4470f",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.0"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "~4.2"
+            "php": ">=5.3.3"
         },
-        "time": "2014-09-14 10:18:53",
+        "time": "2014-09-22 09:14:18",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.4.x-dev"
+                "dev-master": "2.5-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "org\\bovigo\\vfs\\": "src/main/php"
+                "Symfony\\Component\\Serializer\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD"
+            "MIT"
         ],
-        "homepage": "http://vfs.bovigo.org/"
+        "authors": [
+            {
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
+            },
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            }
+        ],
+        "description": "Symfony Serializer Component",
+        "homepage": "http://symfony.com"
     },
     {
-        "name": "phpunit/php-token-stream",
-        "version": "1.3.0",
-        "version_normalized": "1.3.0.0",
+        "name": "symfony/translation",
+        "version": "v2.5.6",
+        "version_normalized": "2.5.6.0",
+        "target-dir": "Symfony/Component/Translation",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-token-stream.git",
-            "reference": "f8d5d08c56de5cfd592b3340424a81733259a876"
+            "url": "https://github.com/symfony/Translation.git",
+            "reference": "362fe4da2cfe587f72d57aaa2f89e6b61c05dedf"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/f8d5d08c56de5cfd592b3340424a81733259a876",
-            "reference": "f8d5d08c56de5cfd592b3340424a81733259a876",
+            "url": "https://api.github.com/repos/symfony/Translation/zipball/362fe4da2cfe587f72d57aaa2f89e6b61c05dedf",
+            "reference": "362fe4da2cfe587f72d57aaa2f89e6b61c05dedf",
             "shasum": ""
         },
         "require": {
-            "ext-tokenizer": "*",
             "php": ">=5.3.3"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.2"
+            "symfony/config": "~2.0",
+            "symfony/intl": "~2.3",
+            "symfony/yaml": "~2.2"
         },
-        "time": "2014-08-31 06:12:13",
+        "suggest": {
+            "symfony/config": "",
+            "symfony/yaml": ""
+        },
+        "time": "2014-10-01 05:50:18",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.3-dev"
+                "dev-master": "2.5-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-0": {
+                "Symfony\\Component\\Translation\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
+            },
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             }
         ],
-        "description": "Wrapper around PHP's tokenizer extension.",
-        "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
-        "keywords": [
-            "tokenizer"
-        ]
+        "description": "Symfony Translation Component",
+        "homepage": "http://symfony.com"
     },
     {
-        "name": "symfony/yaml",
-        "version": "dev-master",
-        "version_normalized": "9999999-dev",
-        "target-dir": "Symfony/Component/Yaml",
+        "name": "symfony/validator",
+        "version": "v2.5.6",
+        "version_normalized": "2.5.6.0",
+        "target-dir": "Symfony/Component/Validator",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Yaml.git",
-            "reference": "499f7d7aa96747ad97940089bd7a1fb24ad8182a"
+            "url": "https://github.com/symfony/Validator.git",
+            "reference": "a3a2140520fbb47d98d23b78521a383073312a1c"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Yaml/zipball/499f7d7aa96747ad97940089bd7a1fb24ad8182a",
-            "reference": "499f7d7aa96747ad97940089bd7a1fb24ad8182a",
+            "url": "https://api.github.com/repos/symfony/Validator/zipball/a3a2140520fbb47d98d23b78521a383073312a1c",
+            "reference": "a3a2140520fbb47d98d23b78521a383073312a1c",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.3",
+            "symfony/translation": "~2.0"
+        },
+        "require-dev": {
+            "doctrine/annotations": "~1.0",
+            "doctrine/cache": "~1.0",
+            "egulias/email-validator": "~1.0",
+            "symfony/config": "~2.2",
+            "symfony/expression-language": "~2.4",
+            "symfony/http-foundation": "~2.1",
+            "symfony/intl": "~2.3",
+            "symfony/property-access": "~2.2",
+            "symfony/yaml": "~2.0"
+        },
+        "suggest": {
+            "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
+            "doctrine/cache": "For using the default cached annotation reader and metadata cache.",
+            "egulias/email-validator": "Strict (RFC compliant) email validation",
+            "symfony/config": "",
+            "symfony/expression-language": "For using the 2.4 Expression validator",
+            "symfony/http-foundation": "",
+            "symfony/intl": "",
+            "symfony/property-access": "For using the 2.4 Validator API",
+            "symfony/yaml": ""
         },
-        "time": "2014-10-05 13:53:50",
+        "time": "2014-10-01 05:50:18",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.6-dev"
+                "dev-master": "2.5-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Symfony\\Component\\Yaml\\": ""
+                "Symfony\\Component\\Validator\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -808,31 +911,39 @@
                 "email": "fabien@symfony.com"
             }
         ],
-        "description": "Symfony Yaml Component",
+        "description": "Symfony Validator Component",
         "homepage": "http://symfony.com"
     },
     {
-        "name": "sebastian/version",
-        "version": "1.0.3",
-        "version_normalized": "1.0.3.0",
+        "name": "twig/twig",
+        "version": "v1.16.2",
+        "version_normalized": "1.16.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/version.git",
-            "reference": "b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43"
+            "url": "https://github.com/twigphp/Twig.git",
+            "reference": "42f758d9fe2146d1f0470604fc05ee43580873fc"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43",
-            "reference": "b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43",
+            "url": "https://api.github.com/repos/twigphp/Twig/zipball/42f758d9fe2146d1f0470604fc05ee43580873fc",
+            "reference": "42f758d9fe2146d1f0470604fc05ee43580873fc",
             "shasum": ""
         },
-        "time": "2014-03-07 15:35:33",
+        "require": {
+            "php": ">=5.2.4"
+        },
+        "time": "2014-10-17 12:53:44",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.16-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-0": {
+                "Twig_": "lib/"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
@@ -840,335 +951,317 @@
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de",
-                "role": "lead"
-            }
-        ],
-        "description": "Library that helps with managing the version number of Git-hosted PHP projects",
-        "homepage": "https://github.com/sebastianbergmann/version"
-    },
-    {
-        "name": "sebastian/exporter",
-        "version": "1.0.2",
-        "version_normalized": "1.0.2.0",
-        "source": {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com",
+                "homepage": "http://fabien.potencier.org",
+                "role": "Lead Developer"
+            },
+            {
+                "name": "Armin Ronacher",
+                "email": "armin.ronacher@active-4.com",
+                "role": "Project Founder"
+            },
+            {
+                "name": "Twig Team",
+                "homepage": "https://github.com/fabpot/Twig/graphs/contributors",
+                "role": "Contributors"
+            }
+        ],
+        "description": "Twig, the flexible, fast, and secure template language for PHP",
+        "homepage": "http://twig.sensiolabs.org",
+        "keywords": [
+            "templating"
+        ]
+    },
+    {
+        "name": "doctrine/lexer",
+        "version": "v1.0",
+        "version_normalized": "1.0.0.0",
+        "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/exporter.git",
-            "reference": "c7d59948d6e82818e1bdff7cadb6c34710eb7dc0"
+            "url": "https://github.com/doctrine/lexer.git",
+            "reference": "2f708a85bb3aab5d99dab8be435abd73e0b18acb"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/c7d59948d6e82818e1bdff7cadb6c34710eb7dc0",
-            "reference": "c7d59948d6e82818e1bdff7cadb6c34710eb7dc0",
+            "url": "https://api.github.com/repos/doctrine/lexer/zipball/2f708a85bb3aab5d99dab8be435abd73e0b18acb",
+            "reference": "2f708a85bb3aab5d99dab8be435abd73e0b18acb",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "~4.0"
+            "php": ">=5.3.2"
         },
-        "time": "2014-09-10 00:51:36",
+        "time": "2013-01-12 18:59:04",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.0.x-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-0": {
+                "Doctrine\\Common\\Lexer\\": "lib/"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Jeff Welch",
-                "email": "whatthejeff@gmail.com"
-            },
-            {
-                "name": "Volker Dusch",
-                "email": "github@wallbash.com"
-            },
-            {
-                "name": "Bernhard Schussek",
-                "email": "bschussek@2bepublished.at"
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com",
+                "homepage": "http://www.instaclick.com"
             },
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
             },
             {
-                "name": "Adam Harvey",
-                "email": "aharvey@php.net"
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com",
+                "homepage": "https://github.com/schmittjoh",
+                "role": "Developer of wrapped JMSSerializerBundle"
             }
         ],
-        "description": "Provides the functionality to export PHP variables for visualization",
-        "homepage": "http://www.github.com/sebastianbergmann/exporter",
+        "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.",
+        "homepage": "http://www.doctrine-project.org",
         "keywords": [
-            "export",
-            "exporter"
+            "lexer",
+            "parser"
         ]
     },
     {
-        "name": "sebastian/environment",
-        "version": "1.1.0",
-        "version_normalized": "1.1.0.0",
+        "name": "doctrine/annotations",
+        "version": "v1.2.1",
+        "version_normalized": "1.2.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/environment.git",
-            "reference": "6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7"
+            "url": "https://github.com/doctrine/annotations.git",
+            "reference": "6a6bec0670bb6e71a263b08bc1b98ea242928633"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7",
-            "reference": "6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7",
+            "url": "https://api.github.com/repos/doctrine/annotations/zipball/6a6bec0670bb6e71a263b08bc1b98ea242928633",
+            "reference": "6a6bec0670bb6e71a263b08bc1b98ea242928633",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "doctrine/lexer": "1.*",
+            "php": ">=5.3.2"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.3"
+            "doctrine/cache": "1.*",
+            "phpunit/phpunit": "4.*"
         },
-        "time": "2014-10-07 09:23:16",
+        "time": "2014-09-25 16:45:30",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.1.x-dev"
+                "dev-master": "1.3.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-0": {
+                "Doctrine\\Common\\Annotations\\": "lib/"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
+            },
+            {
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com"
+            },
+            {
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com"
             }
         ],
-        "description": "Provides functionality to handle HHVM/PHP environments",
-        "homepage": "http://www.github.com/sebastianbergmann/environment",
+        "description": "Docblock Annotations Parser",
+        "homepage": "http://www.doctrine-project.org",
         "keywords": [
-            "Xdebug",
-            "environment",
-            "hhvm"
+            "annotations",
+            "docblock",
+            "parser"
         ]
     },
     {
-        "name": "sebastian/diff",
-        "version": "1.2.0",
+        "name": "doctrine/collections",
+        "version": "v1.2",
         "version_normalized": "1.2.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/diff.git",
-            "reference": "5843509fed39dee4b356a306401e9dd1a931fec7"
+            "url": "https://github.com/doctrine/collections.git",
+            "reference": "b99c5c46c87126201899afe88ec490a25eedd6a2"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/5843509fed39dee4b356a306401e9dd1a931fec7",
-            "reference": "5843509fed39dee4b356a306401e9dd1a931fec7",
+            "url": "https://api.github.com/repos/doctrine/collections/zipball/b99c5c46c87126201899afe88ec490a25eedd6a2",
+            "reference": "b99c5c46c87126201899afe88ec490a25eedd6a2",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "~4.2"
+            "php": ">=5.3.2"
         },
-        "time": "2014-08-15 10:29:00",
+        "time": "2014-02-03 23:07:43",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.2-dev"
+                "dev-master": "1.2.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-0": {
+                "Doctrine\\Common\\Collections\\": "lib/"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Kore Nordmann",
-                "email": "mail@kore-nordmann.de"
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com",
+                "homepage": "http://www.jwage.com/",
+                "role": "Creator"
             },
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com",
+                "homepage": "http://www.instaclick.com"
+            },
+            {
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
+            },
+            {
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com",
+                "homepage": "https://github.com/schmittjoh",
+                "role": "Developer of wrapped JMSSerializerBundle"
             }
         ],
-        "description": "Diff implementation",
-        "homepage": "http://www.github.com/sebastianbergmann/diff",
+        "description": "Collections Abstraction library",
+        "homepage": "http://www.doctrine-project.org",
         "keywords": [
-            "diff"
+            "array",
+            "collections",
+            "iterator"
         ]
     },
     {
-        "name": "sebastian/comparator",
-        "version": "1.0.1",
-        "version_normalized": "1.0.1.0",
+        "name": "doctrine/cache",
+        "version": "v1.3.1",
+        "version_normalized": "1.3.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/comparator.git",
-            "reference": "e54a01c0da1b87db3c5a3c4c5277ddf331da4aef"
+            "url": "https://github.com/doctrine/cache.git",
+            "reference": "cf483685798a72c93bf4206e3dd6358ea07d64e7"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/e54a01c0da1b87db3c5a3c4c5277ddf331da4aef",
-            "reference": "e54a01c0da1b87db3c5a3c4c5277ddf331da4aef",
+            "url": "https://api.github.com/repos/doctrine/cache/zipball/cf483685798a72c93bf4206e3dd6358ea07d64e7",
+            "reference": "cf483685798a72c93bf4206e3dd6358ea07d64e7",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "sebastian/diff": "~1.1",
-            "sebastian/exporter": "~1.0"
+            "php": ">=5.3.2"
+        },
+        "conflict": {
+            "doctrine/common": ">2.2,<2.4"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.1"
+            "phpunit/phpunit": ">=3.7",
+            "satooshi/php-coveralls": "~0.6"
         },
-        "time": "2014-05-11 23:00:21",
+        "time": "2014-09-17 14:24:04",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0.x-dev"
+                "dev-master": "1.4.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-0": {
+                "Doctrine\\Common\\Cache\\": "lib/"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Jeff Welch",
-                "email": "whatthejeff@gmail.com"
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
             },
             {
-                "name": "Volker Dusch",
-                "email": "github@wallbash.com"
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
             },
             {
-                "name": "Bernhard Schussek",
-                "email": "bschussek@2bepublished.at"
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com"
             },
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com"
             }
         ],
-        "description": "Provides the functionality to compare PHP values for equality",
-        "homepage": "http://www.github.com/sebastianbergmann/comparator",
-        "keywords": [
-            "comparator",
-            "compare",
-            "equality"
-        ]
-    },
-    {
-        "name": "phpunit/php-text-template",
-        "version": "1.2.0",
-        "version_normalized": "1.2.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-text-template.git",
-            "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/206dfefc0ffe9cebf65c413e3d0e809c82fbf00a",
-            "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.3"
-        },
-        "time": "2014-01-30 17:20:04",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "classmap": [
-                "Text/"
-            ]
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "include-path": [
-            ""
-        ],
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "authors": [
-            {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
-            }
-        ],
-        "description": "Simple template engine.",
-        "homepage": "https://github.com/sebastianbergmann/php-text-template/",
+        "description": "Caching library offering an object-oriented API for many cache backends",
+        "homepage": "http://www.doctrine-project.org",
         "keywords": [
-            "template"
+            "cache",
+            "caching"
         ]
     },
     {
-        "name": "doctrine/instantiator",
-        "version": "1.0.4",
-        "version_normalized": "1.0.4.0",
+        "name": "doctrine/inflector",
+        "version": "v1.0",
+        "version_normalized": "1.0.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/instantiator.git",
-            "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119"
+            "url": "https://github.com/doctrine/inflector.git",
+            "reference": "54b8333d2a5682afdc690060c1cf384ba9f47f08"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f976e5de371104877ebc89bd8fecb0019ed9c119",
-            "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119",
+            "url": "https://api.github.com/repos/doctrine/inflector/zipball/54b8333d2a5682afdc690060c1cf384ba9f47f08",
+            "reference": "54b8333d2a5682afdc690060c1cf384ba9f47f08",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3,<8.0-DEV"
-        },
-        "require-dev": {
-            "athletic/athletic": "~0.1.8",
-            "ext-pdo": "*",
-            "ext-phar": "*",
-            "phpunit/phpunit": "~4.0",
-            "squizlabs/php_codesniffer": "2.0.*@ALPHA"
+            "php": ">=5.3.2"
         },
-        "time": "2014-10-13 12:58:55",
+        "time": "2013-01-10 21:49:15",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.0.x-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Doctrine\\Instantiator\\": "src"
+                "Doctrine\\Common\\Inflector\\": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1177,339 +1270,77 @@
         ],
         "authors": [
             {
-                "name": "Marco Pivetta",
-                "email": "ocramius@gmail.com",
-                "homepage": "http://ocramius.github.com/"
-            }
-        ],
-        "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
-        "homepage": "https://github.com/doctrine/instantiator",
-        "keywords": [
-            "constructor",
-            "instantiate"
-        ]
-    },
-    {
-        "name": "phpunit/phpunit-mock-objects",
-        "version": "dev-master",
-        "version_normalized": "9999999-dev",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
-            "reference": "e60bb929c50ae4237aaf680a4f6773f4ee17f0a2"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/96c5b81f9842f38fe6c73ad0020306cc4862a9e3",
-            "reference": "e60bb929c50ae4237aaf680a4f6773f4ee17f0a2",
-            "shasum": ""
-        },
-        "require": {
-            "doctrine/instantiator": "~1.0,>=1.0.2",
-            "php": ">=5.3.3",
-            "phpunit/php-text-template": "~1.2"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "4.4.*@dev"
-        },
-        "suggest": {
-            "ext-soap": "*"
-        },
-        "time": "2014-10-04 10:04:20",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.4.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "classmap": [
-                "src/"
-            ]
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "authors": [
-            {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
-            }
-        ],
-        "description": "Mock Object library for PHPUnit",
-        "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
-        "keywords": [
-            "mock",
-            "xunit"
-        ]
-    },
-    {
-        "name": "phpunit/php-timer",
-        "version": "1.0.5",
-        "version_normalized": "1.0.5.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-timer.git",
-            "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/19689d4354b295ee3d8c54b4f42c3efb69cbc17c",
-            "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.3"
-        },
-        "time": "2013-08-02 07:42:54",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "classmap": [
-                "PHP/"
-            ]
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "include-path": [
-            ""
-        ],
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "authors": [
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com",
+                "homepage": "http://www.jwage.com/",
+                "role": "Creator"
+            },
             {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
-            }
-        ],
-        "description": "Utility class for timing",
-        "homepage": "https://github.com/sebastianbergmann/php-timer/",
-        "keywords": [
-            "timer"
-        ]
-    },
-    {
-        "name": "phpunit/php-file-iterator",
-        "version": "1.3.4",
-        "version_normalized": "1.3.4.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
-            "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/acd690379117b042d1c8af1fafd61bde001bf6bb",
-            "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.3"
-        },
-        "time": "2013-10-10 15:34:57",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "classmap": [
-                "File/"
-            ]
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "include-path": [
-            ""
-        ],
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "authors": [
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com",
+                "homepage": "http://www.instaclick.com"
+            },
             {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
-            }
-        ],
-        "description": "FilterIterator implementation that filters files based on a list of suffixes.",
-        "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
-        "keywords": [
-            "filesystem",
-            "iterator"
-        ]
-    },
-    {
-        "name": "phpunit/php-code-coverage",
-        "version": "2.0.11",
-        "version_normalized": "2.0.11.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
-            "reference": "53603b3c995f5aab6b59c8e08c3a663d2cc810b7"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/53603b3c995f5aab6b59c8e08c3a663d2cc810b7",
-            "reference": "53603b3c995f5aab6b59c8e08c3a663d2cc810b7",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.3",
-            "phpunit/php-file-iterator": "~1.3",
-            "phpunit/php-text-template": "~1.2",
-            "phpunit/php-token-stream": "~1.3",
-            "sebastian/environment": "~1.0",
-            "sebastian/version": "~1.0"
-        },
-        "require-dev": {
-            "ext-xdebug": ">=2.1.4",
-            "phpunit/phpunit": "~4.1"
-        },
-        "suggest": {
-            "ext-dom": "*",
-            "ext-xdebug": ">=2.2.1",
-            "ext-xmlwriter": "*"
-        },
-        "time": "2014-08-31 06:33:04",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.0.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "classmap": [
-                "src/"
-            ]
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "include-path": [
-            ""
-        ],
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "authors": [
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
+            },
             {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
-            }
-        ],
-        "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
-        "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
-        "keywords": [
-            "coverage",
-            "testing",
-            "xunit"
-        ]
-    },
-    {
-        "name": "phpunit/phpunit",
-        "version": "4.1.4",
-        "version_normalized": "4.1.4.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/sebastianbergmann/phpunit.git",
-            "reference": "a71c4842c5fb836d8b200624583b859ec34e8a26"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a71c4842c5fb836d8b200624583b859ec34e8a26",
-            "reference": "a71c4842c5fb836d8b200624583b859ec34e8a26",
-            "shasum": ""
-        },
-        "require": {
-            "ext-dom": "*",
-            "ext-json": "*",
-            "ext-pcre": "*",
-            "ext-reflection": "*",
-            "ext-spl": "*",
-            "php": ">=5.3.3",
-            "phpunit/php-code-coverage": "~2.0",
-            "phpunit/php-file-iterator": "~1.3.1",
-            "phpunit/php-text-template": "~1.2",
-            "phpunit/php-timer": "~1.0.2",
-            "phpunit/phpunit-mock-objects": "~2.1",
-            "sebastian/comparator": "~1.0",
-            "sebastian/diff": "~1.1",
-            "sebastian/environment": "~1.0",
-            "sebastian/exporter": "~1.0",
-            "sebastian/version": "~1.0",
-            "symfony/yaml": "~2.0"
-        },
-        "suggest": {
-            "phpunit/php-invoker": "~1.1"
-        },
-        "time": "2014-07-18 07:15:58",
-        "bin": [
-            "phpunit"
-        ],
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "4.1.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "classmap": [
-                "src/"
-            ]
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "include-path": [
-            "",
-            "../../symfony/yaml/"
-        ],
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "authors": [
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de",
-                "role": "lead"
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com",
+                "homepage": "https://github.com/schmittjoh",
+                "role": "Developer of wrapped JMSSerializerBundle"
             }
         ],
-        "description": "The PHP Unit Testing framework.",
-        "homepage": "http://www.phpunit.de/",
+        "description": "Common String Manipulations with regard to casing and singular/plural rules.",
+        "homepage": "http://www.doctrine-project.org",
         "keywords": [
-            "phpunit",
-            "testing",
-            "xunit"
+            "inflection",
+            "pluarlize",
+            "singuarlize",
+            "string"
         ]
     },
     {
-        "name": "sdboyer/gliph",
-        "version": "0.1.8",
-        "version_normalized": "0.1.8.0",
+        "name": "doctrine/common",
+        "version": "v2.4.2",
+        "version_normalized": "2.4.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sdboyer/gliph.git",
-            "reference": "db9e4b77622f91e2d338cc45f83c2cd0e3cf0e1e"
+            "url": "https://github.com/doctrine/common.git",
+            "reference": "5db6ab40e4c531f14dad4ca96a394dfce5d4255b"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sdboyer/gliph/zipball/db9e4b77622f91e2d338cc45f83c2cd0e3cf0e1e",
-            "reference": "db9e4b77622f91e2d338cc45f83c2cd0e3cf0e1e",
+            "url": "https://api.github.com/repos/doctrine/common/zipball/5db6ab40e4c531f14dad4ca96a394dfce5d4255b",
+            "reference": "5db6ab40e4c531f14dad4ca96a394dfce5d4255b",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3"
+            "doctrine/annotations": "1.*",
+            "doctrine/cache": "1.*",
+            "doctrine/collections": "1.*",
+            "doctrine/inflector": "1.*",
+            "doctrine/lexer": "1.*",
+            "php": ">=5.3.2"
         },
         "require-dev": {
-            "phpunit/phpunit": "3.7.*",
-            "satooshi/php-coveralls": "0.6.*"
+            "phpunit/phpunit": "~3.7"
         },
-        "time": "2014-08-03 14:34:47",
+        "time": "2014-05-21 19:28:51",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.4.x-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "Gliph": "src/"
+                "Doctrine\\Common\\": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1518,56 +1349,73 @@
         ],
         "authors": [
             {
-                "name": "Sam Boyer",
-                "email": "tech@samboyer.org"
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com",
+                "homepage": "http://www.jwage.com/",
+                "role": "Creator"
+            },
+            {
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com",
+                "homepage": "http://www.instaclick.com"
+            },
+            {
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
+            },
+            {
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com",
+                "homepage": "https://github.com/schmittjoh",
+                "role": "Developer of wrapped JMSSerializerBundle"
             }
         ],
-        "description": "A graph library for PHP.",
-        "homepage": "http://github.com/sdboyer/gliph",
+        "description": "Common Library for Doctrine projects",
+        "homepage": "http://www.doctrine-project.org",
         "keywords": [
-            "gliph",
-            "graph",
-            "library",
-            "php",
+            "annotations",
+            "collections",
+            "eventmanager",
+            "persistence",
             "spl"
         ]
     },
     {
-        "name": "symfony/http-foundation",
-        "version": "v2.5.5",
-        "version_normalized": "2.5.5.0",
-        "target-dir": "Symfony/Component/HttpFoundation",
+        "name": "react/promise",
+        "version": "v2.1.0",
+        "version_normalized": "2.1.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/HttpFoundation.git",
-            "reference": "650e115af152d7a5e857d01c2cdb9a22809de9b4"
+            "url": "https://github.com/reactphp/promise.git",
+            "reference": "937b04f1b0ee8f6d180e75a0830aac778ca4bcd6"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/650e115af152d7a5e857d01c2cdb9a22809de9b4",
-            "reference": "650e115af152d7a5e857d01c2cdb9a22809de9b4",
+            "url": "https://api.github.com/repos/reactphp/promise/zipball/937b04f1b0ee8f6d180e75a0830aac778ca4bcd6",
+            "reference": "937b04f1b0ee8f6d180e75a0830aac778ca4bcd6",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
-        },
-        "require-dev": {
-            "symfony/expression-language": "~2.4"
+            "php": ">=5.4.0"
         },
-        "time": "2014-09-25 09:52:29",
+        "time": "2014-10-15 20:05:57",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev"
+                "dev-master": "2.0-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\HttpFoundation\\": ""
+            "psr-4": {
+                "React\\Promise\\": "src/"
             },
-            "classmap": [
-                "Symfony/Component/HttpFoundation/Resources/stubs"
+            "files": [
+                "src/functions.php"
             ]
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1576,57 +1424,44 @@
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Jan Sorgalla",
+                "email": "jsorgalla@googlemail.com"
             }
         ],
-        "description": "Symfony HttpFoundation Component",
-        "homepage": "http://symfony.com"
+        "description": "A lightweight implementation of CommonJS Promises/A for PHP"
     },
     {
-        "name": "symfony/event-dispatcher",
-        "version": "v2.5.5",
-        "version_normalized": "2.5.5.0",
-        "target-dir": "Symfony/Component/EventDispatcher",
+        "name": "guzzlehttp/streams",
+        "version": "3.0.0",
+        "version_normalized": "3.0.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/EventDispatcher.git",
-            "reference": "f6281337bf5f985f585d1db6a83adb05ce531f46"
+            "url": "https://github.com/guzzle/streams.git",
+            "reference": "47aaa48e27dae43d39fc1cea0ccf0d84ac1a2ba5"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/f6281337bf5f985f585d1db6a83adb05ce531f46",
-            "reference": "f6281337bf5f985f585d1db6a83adb05ce531f46",
+            "url": "https://api.github.com/repos/guzzle/streams/zipball/47aaa48e27dae43d39fc1cea0ccf0d84ac1a2ba5",
+            "reference": "47aaa48e27dae43d39fc1cea0ccf0d84ac1a2ba5",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.4.0"
         },
         "require-dev": {
-            "psr/log": "~1.0",
-            "symfony/config": "~2.0",
-            "symfony/dependency-injection": "~2.0,<2.6.0",
-            "symfony/stopwatch": "~2.2"
-        },
-        "suggest": {
-            "symfony/dependency-injection": "",
-            "symfony/http-kernel": ""
+            "phpunit/phpunit": "~4.0"
         },
-        "time": "2014-09-28 15:56:11",
+        "time": "2014-10-12 19:18:40",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev"
+                "dev-master": "3.0-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\EventDispatcher\\": ""
+            "psr-4": {
+                "GuzzleHttp\\Stream\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1635,55 +1470,56 @@
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Michael Dowling",
+                "email": "mtdowling@gmail.com",
+                "homepage": "https://github.com/mtdowling"
             }
         ],
-        "description": "Symfony EventDispatcher Component",
-        "homepage": "http://symfony.com"
+        "description": "Provides a simple abstraction over streams of data",
+        "homepage": "http://guzzlephp.org/",
+        "keywords": [
+            "Guzzle",
+            "stream"
+        ]
     },
     {
-        "name": "symfony/debug",
-        "version": "v2.5.5",
-        "version_normalized": "2.5.5.0",
-        "target-dir": "Symfony/Component/Debug",
+        "name": "guzzlehttp/ringphp",
+        "version": "1.0.3",
+        "version_normalized": "1.0.3.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Debug.git",
-            "reference": "4a3dd4ef3fc0cee2fd9faaae12bd7af43afcf648"
+            "url": "https://github.com/guzzle/RingPHP.git",
+            "reference": "e7c28f96c5ac12ab0e63412cfc15989756fcb964"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Debug/zipball/4a3dd4ef3fc0cee2fd9faaae12bd7af43afcf648",
-            "reference": "4a3dd4ef3fc0cee2fd9faaae12bd7af43afcf648",
+            "url": "https://api.github.com/repos/guzzle/RingPHP/zipball/e7c28f96c5ac12ab0e63412cfc15989756fcb964",
+            "reference": "e7c28f96c5ac12ab0e63412cfc15989756fcb964",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "guzzlehttp/streams": "~3.0",
+            "php": ">=5.4.0",
+            "react/promise": "~2.0"
         },
         "require-dev": {
-            "symfony/http-foundation": "~2.1",
-            "symfony/http-kernel": "~2.1"
+            "ext-curl": "*",
+            "phpunit/phpunit": "~4.0"
         },
         "suggest": {
-            "symfony/http-foundation": "",
-            "symfony/http-kernel": ""
+            "ext-curl": "Guzzle will use specific adapters if cURL is present"
         },
-        "time": "2014-09-28 15:22:14",
+        "time": "2014-11-04 07:01:14",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev"
+                "dev-master": "1.0-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\Debug\\": ""
+            "psr-4": {
+                "GuzzleHttp\\Ring\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1692,38 +1528,47 @@
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Michael Dowling",
+                "email": "mtdowling@gmail.com",
+                "homepage": "https://github.com/mtdowling"
             }
-        ],
-        "description": "Symfony Debug Component",
-        "homepage": "http://symfony.com"
+        ]
     },
     {
-        "name": "psr/log",
-        "version": "1.0.0",
-        "version_normalized": "1.0.0.0",
+        "name": "guzzlehttp/guzzle",
+        "version": "5.0.3",
+        "version_normalized": "5.0.3.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/php-fig/log",
-            "reference": "1.0.0"
+            "url": "https://github.com/guzzle/guzzle.git",
+            "reference": "6c72627de1d66832e4270e36e56acdb0d1d8f282"
         },
         "dist": {
             "type": "zip",
-            "url": "https://github.com/php-fig/log/archive/1.0.0.zip",
-            "reference": "1.0.0",
+            "url": "https://api.github.com/repos/guzzle/guzzle/zipball/6c72627de1d66832e4270e36e56acdb0d1d8f282",
+            "reference": "6c72627de1d66832e4270e36e56acdb0d1d8f282",
             "shasum": ""
         },
-        "time": "2012-12-21 11:40:51",
+        "require": {
+            "guzzlehttp/ringphp": "~1.0",
+            "php": ">=5.4.0"
+        },
+        "require-dev": {
+            "ext-curl": "*",
+            "phpunit/phpunit": "~4.0",
+            "psr/log": "~1.0"
+        },
+        "time": "2014-11-04 07:09:15",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "5.0-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Psr\\Log\\": ""
+            "psr-4": {
+                "GuzzleHttp\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1732,720 +1577,689 @@
         ],
         "authors": [
             {
-                "name": "PHP-FIG",
-                "homepage": "http://www.php-fig.org/"
+                "name": "Michael Dowling",
+                "email": "mtdowling@gmail.com",
+                "homepage": "https://github.com/mtdowling"
             }
         ],
-        "description": "Common interface for logging libraries",
+        "description": "Guzzle is a PHP HTTP client library and framework for building RESTful web service clients",
+        "homepage": "http://guzzlephp.org/",
         "keywords": [
-            "log",
-            "psr",
-            "psr-3"
-        ]
-    },
-    {
-        "name": "symfony/http-kernel",
-        "version": "v2.5.5",
-        "version_normalized": "2.5.5.0",
-        "target-dir": "Symfony/Component/HttpKernel",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/symfony/HttpKernel.git",
-            "reference": "6a3595611229def14d5e644f060cf372235532ec"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/6a3595611229def14d5e644f060cf372235532ec",
-            "reference": "6a3595611229def14d5e644f060cf372235532ec",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.3",
-            "psr/log": "~1.0",
-            "symfony/debug": "~2.5",
-            "symfony/event-dispatcher": "~2.5",
-            "symfony/http-foundation": "~2.5"
-        },
-        "require-dev": {
-            "symfony/browser-kit": "~2.2",
-            "symfony/class-loader": "~2.1",
-            "symfony/config": "~2.0",
-            "symfony/console": "~2.2",
-            "symfony/dependency-injection": "~2.0",
-            "symfony/expression-language": "~2.4",
-            "symfony/finder": "~2.0",
-            "symfony/process": "~2.0",
-            "symfony/routing": "~2.2",
-            "symfony/stopwatch": "~2.2",
-            "symfony/templating": "~2.2"
+            "client",
+            "curl",
+            "framework",
+            "http",
+            "http client",
+            "rest",
+            "web service"
+        ]
+    },
+    {
+        "name": "sebastian/version",
+        "version": "1.0.3",
+        "version_normalized": "1.0.3.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/sebastianbergmann/version.git",
+            "reference": "b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43"
         },
-        "suggest": {
-            "symfony/browser-kit": "",
-            "symfony/class-loader": "",
-            "symfony/config": "",
-            "symfony/console": "",
-            "symfony/dependency-injection": "",
-            "symfony/finder": ""
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43",
+            "reference": "b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43",
+            "shasum": ""
         },
-        "time": "2014-09-28 17:33:53",
+        "time": "2014-03-07 15:35:33",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.5-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\HttpKernel\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony HttpKernel Component",
-        "homepage": "http://symfony.com"
+        "description": "Library that helps with managing the version number of Git-hosted PHP projects",
+        "homepage": "https://github.com/sebastianbergmann/version"
     },
     {
-        "name": "stack/builder",
-        "version": "v1.0.2",
+        "name": "sebastian/exporter",
+        "version": "1.0.2",
         "version_normalized": "1.0.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/stackphp/builder.git",
-            "reference": "b4af43e7b7f3f7fac919ff475b29f7c5dc7b23b7"
+            "url": "https://github.com/sebastianbergmann/exporter.git",
+            "reference": "c7d59948d6e82818e1bdff7cadb6c34710eb7dc0"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/stackphp/builder/zipball/b4af43e7b7f3f7fac919ff475b29f7c5dc7b23b7",
-            "reference": "b4af43e7b7f3f7fac919ff475b29f7c5dc7b23b7",
+            "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/c7d59948d6e82818e1bdff7cadb6c34710eb7dc0",
+            "reference": "c7d59948d6e82818e1bdff7cadb6c34710eb7dc0",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.0",
-            "symfony/http-foundation": "~2.1",
-            "symfony/http-kernel": "~2.1"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "silex/silex": "~1.0"
+            "phpunit/phpunit": "~4.0"
         },
-        "time": "2014-01-28 19:42:24",
+        "time": "2014-09-10 00:51:36",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0-dev"
+                "dev-master": "1.0.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Stack": "src"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Igor Wiedler",
-                "email": "igor@wiedler.ch",
-                "homepage": "http://wiedler.ch/igor/"
+                "name": "Jeff Welch",
+                "email": "whatthejeff@gmail.com"
+            },
+            {
+                "name": "Volker Dusch",
+                "email": "github@wallbash.com"
+            },
+            {
+                "name": "Bernhard Schussek",
+                "email": "bschussek@2bepublished.at"
+            },
+            {
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
+            },
+            {
+                "name": "Adam Harvey",
+                "email": "aharvey@php.net"
             }
         ],
-        "description": "Builder for stack middlewares based on HttpKernelInterface.",
+        "description": "Provides the functionality to export PHP variables for visualization",
+        "homepage": "http://www.github.com/sebastianbergmann/exporter",
         "keywords": [
-            "stack"
+            "export",
+            "exporter"
         ]
     },
     {
-        "name": "symfony/routing",
-        "version": "v2.5.5",
-        "version_normalized": "2.5.5.0",
-        "target-dir": "Symfony/Component/Routing",
+        "name": "sebastian/environment",
+        "version": "1.2.0",
+        "version_normalized": "1.2.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Routing.git",
-            "reference": "9bc38fe72e0eff61611e7cd4df3accbce20b1d36"
+            "url": "https://github.com/sebastianbergmann/environment.git",
+            "reference": "0d9bf79554d2a999da194a60416c15cf461eb67d"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Routing/zipball/9bc38fe72e0eff61611e7cd4df3accbce20b1d36",
-            "reference": "9bc38fe72e0eff61611e7cd4df3accbce20b1d36",
+            "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/0d9bf79554d2a999da194a60416c15cf461eb67d",
+            "reference": "0d9bf79554d2a999da194a60416c15cf461eb67d",
             "shasum": ""
         },
         "require": {
             "php": ">=5.3.3"
         },
         "require-dev": {
-            "doctrine/annotations": "~1.0",
-            "psr/log": "~1.0",
-            "symfony/config": "~2.2",
-            "symfony/expression-language": "~2.4",
-            "symfony/http-foundation": "~2.3",
-            "symfony/yaml": "~2.0"
-        },
-        "suggest": {
-            "doctrine/annotations": "For using the annotation loader",
-            "symfony/config": "For using the all-in-one router or any loader",
-            "symfony/expression-language": "For using expression matching",
-            "symfony/yaml": "For using the YAML loader"
+            "phpunit/phpunit": "~4.3"
         },
-        "time": "2014-09-22 15:28:36",
+        "time": "2014-10-22 06:38:05",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev"
+                "dev-master": "1.2.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\Routing\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Symfony Routing Component",
-        "homepage": "http://symfony.com",
+        "description": "Provides functionality to handle HHVM/PHP environments",
+        "homepage": "http://www.github.com/sebastianbergmann/environment",
         "keywords": [
-            "router",
-            "routing",
-            "uri",
-            "url"
+            "Xdebug",
+            "environment",
+            "hhvm"
         ]
     },
     {
-        "name": "symfony-cmf/routing",
-        "version": "1.3.0",
-        "version_normalized": "1.3.0.0",
+        "name": "sebastian/diff",
+        "version": "1.2.0",
+        "version_normalized": "1.2.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony-cmf/Routing.git",
-            "reference": "8e87981d72c6930a27585dcd3119f3199f6cb2a6"
+            "url": "https://github.com/sebastianbergmann/diff.git",
+            "reference": "5843509fed39dee4b356a306401e9dd1a931fec7"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/8e87981d72c6930a27585dcd3119f3199f6cb2a6",
-            "reference": "8e87981d72c6930a27585dcd3119f3199f6cb2a6",
+            "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/5843509fed39dee4b356a306401e9dd1a931fec7",
+            "reference": "5843509fed39dee4b356a306401e9dd1a931fec7",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "psr/log": "~1.0",
-            "symfony/http-kernel": "~2.2",
-            "symfony/routing": "~2.2"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "symfony/config": "~2.2",
-            "symfony/dependency-injection": "~2.0@stable",
-            "symfony/event-dispatcher": "~2.1"
-        },
-        "suggest": {
-            "symfony/event-dispatcher": "DynamicRouter can optionally trigger an event at the start of matching. Minimal version ~2.1"
+            "phpunit/phpunit": "~4.2"
         },
-        "time": "2014-10-20 20:55:17",
+        "time": "2014-08-15 10:29:00",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.3-dev"
+                "dev-master": "1.2-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Cmf\\Component\\Routing\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Symfony CMF Community",
-                "homepage": "https://github.com/symfony-cmf/Routing/contributors"
+                "name": "Kore Nordmann",
+                "email": "mail@kore-nordmann.de"
+            },
+            {
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Extends the Symfony2 routing component for dynamic routes and chaining several routers",
-        "homepage": "http://cmf.symfony.com",
+        "description": "Diff implementation",
+        "homepage": "http://www.github.com/sebastianbergmann/diff",
         "keywords": [
-            "database",
-            "routing"
+            "diff"
         ]
     },
     {
-        "name": "symfony/class-loader",
-        "version": "v2.5.5",
-        "version_normalized": "2.5.5.0",
-        "target-dir": "Symfony/Component/ClassLoader",
+        "name": "sebastian/comparator",
+        "version": "1.0.1",
+        "version_normalized": "1.0.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/ClassLoader.git",
-            "reference": "432561f655123b003b32f370ca812fed9a9340c6"
+            "url": "https://github.com/sebastianbergmann/comparator.git",
+            "reference": "e54a01c0da1b87db3c5a3c4c5277ddf331da4aef"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/432561f655123b003b32f370ca812fed9a9340c6",
-            "reference": "432561f655123b003b32f370ca812fed9a9340c6",
+            "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/e54a01c0da1b87db3c5a3c4c5277ddf331da4aef",
+            "reference": "e54a01c0da1b87db3c5a3c4c5277ddf331da4aef",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.3",
+            "sebastian/diff": "~1.1",
+            "sebastian/exporter": "~1.0"
         },
         "require-dev": {
-            "symfony/finder": "~2.0"
+            "phpunit/phpunit": "~4.1"
         },
-        "time": "2014-09-22 09:14:18",
+        "time": "2014-05-11 23:00:21",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev"
+                "dev-master": "1.0.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\ClassLoader\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
+                "name": "Jeff Welch",
+                "email": "whatthejeff@gmail.com"
             },
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Volker Dusch",
+                "email": "github@wallbash.com"
+            },
+            {
+                "name": "Bernhard Schussek",
+                "email": "bschussek@2bepublished.at"
+            },
+            {
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Symfony ClassLoader Component",
-        "homepage": "http://symfony.com"
+        "description": "Provides the functionality to compare PHP values for equality",
+        "homepage": "http://www.github.com/sebastianbergmann/comparator",
+        "keywords": [
+            "comparator",
+            "compare",
+            "equality"
+        ]
     },
     {
-        "name": "symfony/css-selector",
-        "version": "v2.5.5",
-        "version_normalized": "2.5.5.0",
-        "target-dir": "Symfony/Component/CssSelector",
+        "name": "phpunit/php-text-template",
+        "version": "1.2.0",
+        "version_normalized": "1.2.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/CssSelector.git",
-            "reference": "caf5ecc3face1f22884fb74b8edab65ac5ba9976"
+            "url": "https://github.com/sebastianbergmann/php-text-template.git",
+            "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/CssSelector/zipball/caf5ecc3face1f22884fb74b8edab65ac5ba9976",
-            "reference": "caf5ecc3face1f22884fb74b8edab65ac5ba9976",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/206dfefc0ffe9cebf65c413e3d0e809c82fbf00a",
+            "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a",
             "shasum": ""
         },
         "require": {
             "php": ">=5.3.3"
         },
-        "time": "2014-09-22 09:14:18",
+        "time": "2014-01-30 17:20:04",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.5-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\CssSelector\\": ""
-            }
+            "classmap": [
+                "Text/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
+        "include-path": [
+            ""
+        ],
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            },
-            {
-                "name": "Jean-François Simon",
-                "email": "jeanfrancois.simon@sensiolabs.com"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony CssSelector Component",
-        "homepage": "http://symfony.com"
+        "description": "Simple template engine.",
+        "homepage": "https://github.com/sebastianbergmann/php-text-template/",
+        "keywords": [
+            "template"
+        ]
     },
     {
-        "name": "symfony/dependency-injection",
-        "version": "v2.5.5",
-        "version_normalized": "2.5.5.0",
-        "target-dir": "Symfony/Component/DependencyInjection",
+        "name": "phpunit/phpunit-mock-objects",
+        "version": "2.1.5",
+        "version_normalized": "2.1.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/DependencyInjection.git",
-            "reference": "1f01a64c9047909e40700a14ee34e8c446300618"
+            "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
+            "reference": "7878b9c41edb3afab92b85edf5f0981014a2713a"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/1f01a64c9047909e40700a14ee34e8c446300618",
-            "reference": "1f01a64c9047909e40700a14ee34e8c446300618",
+            "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/7878b9c41edb3afab92b85edf5f0981014a2713a",
+            "reference": "7878b9c41edb3afab92b85edf5f0981014a2713a",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.3",
+            "phpunit/php-text-template": "~1.2"
         },
         "require-dev": {
-            "symfony/config": "~2.2",
-            "symfony/expression-language": "~2.4",
-            "symfony/yaml": "~2.0"
+            "phpunit/phpunit": "~4.1"
         },
         "suggest": {
-            "symfony/config": "",
-            "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
-            "symfony/yaml": ""
+            "ext-soap": "*"
         },
-        "time": "2014-09-27 08:35:39",
+        "time": "2014-06-12 07:22:15",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev"
+                "dev-master": "2.1.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\DependencyInjection\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
+        "include-path": [
+            ""
+        ],
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony DependencyInjection Component",
-        "homepage": "http://symfony.com"
+        "description": "Mock Object library for PHPUnit",
+        "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
+        "keywords": [
+            "mock",
+            "xunit"
+        ]
     },
     {
-        "name": "symfony/process",
-        "version": "v2.5.5",
-        "version_normalized": "2.5.5.0",
-        "target-dir": "Symfony/Component/Process",
+        "name": "phpunit/php-timer",
+        "version": "1.0.5",
+        "version_normalized": "1.0.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Process.git",
-            "reference": "8a1ec96c4e519cee0fb971ea48a1eb7369dda54b"
+            "url": "https://github.com/sebastianbergmann/php-timer.git",
+            "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Process/zipball/8a1ec96c4e519cee0fb971ea48a1eb7369dda54b",
-            "reference": "8a1ec96c4e519cee0fb971ea48a1eb7369dda54b",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/19689d4354b295ee3d8c54b4f42c3efb69cbc17c",
+            "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c",
             "shasum": ""
         },
         "require": {
             "php": ">=5.3.3"
         },
-        "time": "2014-09-23 05:25:11",
+        "time": "2013-08-02 07:42:54",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.5-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\Process\\": ""
-            }
+            "classmap": [
+                "PHP/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
+        "include-path": [
+            ""
+        ],
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony Process Component",
-        "homepage": "http://symfony.com"
+        "description": "Utility class for timing",
+        "homepage": "https://github.com/sebastianbergmann/php-timer/",
+        "keywords": [
+            "timer"
+        ]
     },
     {
-        "name": "symfony/serializer",
-        "version": "v2.5.5",
-        "version_normalized": "2.5.5.0",
-        "target-dir": "Symfony/Component/Serializer",
+        "name": "phpunit/php-file-iterator",
+        "version": "1.3.4",
+        "version_normalized": "1.3.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Serializer.git",
-            "reference": "a95c0471682778da2e02169fb2644d3b08d4470f"
+            "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
+            "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Serializer/zipball/a95c0471682778da2e02169fb2644d3b08d4470f",
-            "reference": "a95c0471682778da2e02169fb2644d3b08d4470f",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/acd690379117b042d1c8af1fafd61bde001bf6bb",
+            "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb",
             "shasum": ""
         },
         "require": {
             "php": ">=5.3.3"
         },
-        "time": "2014-09-22 09:14:18",
+        "time": "2013-10-10 15:34:57",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.5-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\Serializer\\": ""
-            }
+            "classmap": [
+                "File/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
+        "include-path": [
+            ""
+        ],
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony Serializer Component",
-        "homepage": "http://symfony.com"
+        "description": "FilterIterator implementation that filters files based on a list of suffixes.",
+        "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
+        "keywords": [
+            "filesystem",
+            "iterator"
+        ]
     },
     {
-        "name": "symfony/translation",
-        "version": "v2.5.5",
-        "version_normalized": "2.5.5.0",
-        "target-dir": "Symfony/Component/Translation",
+        "name": "phpunit/php-token-stream",
+        "version": "1.3.0",
+        "version_normalized": "1.3.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Translation.git",
-            "reference": "170c0d895616e1a6a35681ffb0b9e339f58ab928"
+            "url": "https://github.com/sebastianbergmann/php-token-stream.git",
+            "reference": "f8d5d08c56de5cfd592b3340424a81733259a876"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Translation/zipball/170c0d895616e1a6a35681ffb0b9e339f58ab928",
-            "reference": "170c0d895616e1a6a35681ffb0b9e339f58ab928",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/f8d5d08c56de5cfd592b3340424a81733259a876",
+            "reference": "f8d5d08c56de5cfd592b3340424a81733259a876",
             "shasum": ""
         },
         "require": {
+            "ext-tokenizer": "*",
             "php": ">=5.3.3"
         },
         "require-dev": {
-            "symfony/config": "~2.0",
-            "symfony/intl": "~2.3",
-            "symfony/yaml": "~2.2"
-        },
-        "suggest": {
-            "symfony/config": "",
-            "symfony/yaml": ""
+            "phpunit/phpunit": "~4.2"
         },
-        "time": "2014-09-23 05:25:11",
+        "time": "2014-08-31 06:12:13",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev"
+                "dev-master": "1.3-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\Translation\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Symfony Translation Component",
-        "homepage": "http://symfony.com"
+        "description": "Wrapper around PHP's tokenizer extension.",
+        "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
+        "keywords": [
+            "tokenizer"
+        ]
     },
     {
-        "name": "symfony/validator",
-        "version": "v2.5.5",
-        "version_normalized": "2.5.5.0",
-        "target-dir": "Symfony/Component/Validator",
+        "name": "phpunit/php-code-coverage",
+        "version": "2.0.11",
+        "version_normalized": "2.0.11.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/Validator.git",
-            "reference": "64f61505843ca5e6c647244f5a4b6812c1279427"
+            "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
+            "reference": "53603b3c995f5aab6b59c8e08c3a663d2cc810b7"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/Validator/zipball/64f61505843ca5e6c647244f5a4b6812c1279427",
-            "reference": "64f61505843ca5e6c647244f5a4b6812c1279427",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/53603b3c995f5aab6b59c8e08c3a663d2cc810b7",
+            "reference": "53603b3c995f5aab6b59c8e08c3a663d2cc810b7",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "symfony/translation": "~2.0"
-        },
-        "require-dev": {
-            "doctrine/annotations": "~1.0",
-            "doctrine/cache": "~1.0",
-            "egulias/email-validator": "~1.0",
-            "symfony/config": "~2.2",
-            "symfony/expression-language": "~2.4",
-            "symfony/http-foundation": "~2.1",
-            "symfony/intl": "~2.3",
-            "symfony/property-access": "~2.2",
-            "symfony/yaml": "~2.0"
+            "php": ">=5.3.3",
+            "phpunit/php-file-iterator": "~1.3",
+            "phpunit/php-text-template": "~1.2",
+            "phpunit/php-token-stream": "~1.3",
+            "sebastian/environment": "~1.0",
+            "sebastian/version": "~1.0"
+        },
+        "require-dev": {
+            "ext-xdebug": ">=2.1.4",
+            "phpunit/phpunit": "~4.1"
         },
         "suggest": {
-            "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
-            "doctrine/cache": "For using the default cached annotation reader and metadata cache.",
-            "egulias/email-validator": "Strict (RFC compliant) email validation",
-            "symfony/config": "",
-            "symfony/expression-language": "For using the 2.4 Expression validator",
-            "symfony/http-foundation": "",
-            "symfony/intl": "",
-            "symfony/property-access": "For using the 2.4 Validator API",
-            "symfony/yaml": ""
+            "ext-dom": "*",
+            "ext-xdebug": ">=2.2.1",
+            "ext-xmlwriter": "*"
         },
-        "time": "2014-09-28 15:22:14",
+        "time": "2014-08-31 06:33:04",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev"
+                "dev-master": "2.0.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Symfony\\Component\\Validator\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
+        "include-path": [
+            ""
+        ],
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony Validator Component",
-        "homepage": "http://symfony.com"
+        "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
+        "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
+        "keywords": [
+            "coverage",
+            "testing",
+            "xunit"
+        ]
     },
     {
-        "name": "twig/twig",
-        "version": "v1.16.2",
-        "version_normalized": "1.16.2.0",
+        "name": "phpunit/phpunit",
+        "version": "4.1.6",
+        "version_normalized": "4.1.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/fabpot/Twig.git",
-            "reference": "42f758d9fe2146d1f0470604fc05ee43580873fc"
+            "url": "https://github.com/sebastianbergmann/phpunit.git",
+            "reference": "241116219bb7e3b8111a36ffd8f37546888738d6"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/fabpot/Twig/zipball/42f758d9fe2146d1f0470604fc05ee43580873fc",
-            "reference": "42f758d9fe2146d1f0470604fc05ee43580873fc",
+            "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/241116219bb7e3b8111a36ffd8f37546888738d6",
+            "reference": "241116219bb7e3b8111a36ffd8f37546888738d6",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.2.4"
+            "ext-dom": "*",
+            "ext-json": "*",
+            "ext-pcre": "*",
+            "ext-reflection": "*",
+            "ext-spl": "*",
+            "php": ">=5.3.3",
+            "phpunit/php-code-coverage": "~2.0",
+            "phpunit/php-file-iterator": "~1.3.1",
+            "phpunit/php-text-template": "~1.2",
+            "phpunit/php-timer": "~1.0.2",
+            "phpunit/phpunit-mock-objects": "2.1.5",
+            "sebastian/comparator": "~1.0",
+            "sebastian/diff": "~1.1",
+            "sebastian/environment": "~1.0",
+            "sebastian/exporter": "~1.0",
+            "sebastian/version": "~1.0",
+            "symfony/yaml": "~2.0"
         },
-        "time": "2014-10-17 12:53:44",
+        "suggest": {
+            "phpunit/php-invoker": "~1.1"
+        },
+        "time": "2014-08-17 08:07:02",
+        "bin": [
+            "phpunit"
+        ],
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.16-dev"
+                "dev-master": "4.1.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Twig_": "lib/"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
+        "include-path": [
+            "",
+            "../../symfony/yaml/"
+        ],
         "license": [
             "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com",
-                "homepage": "http://fabien.potencier.org",
-                "role": "Lead Developer"
-            },
-            {
-                "name": "Armin Ronacher",
-                "email": "armin.ronacher@active-4.com",
-                "role": "Project Founder"
-            },
-            {
-                "name": "Twig Team",
-                "homepage": "https://github.com/fabpot/Twig/graphs/contributors",
-                "role": "Contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de",
+                "role": "lead"
             }
         ],
-        "description": "Twig, the flexible, fast, and secure template language for PHP",
-        "homepage": "http://twig.sensiolabs.org",
+        "description": "The PHP Unit Testing framework.",
+        "homepage": "http://www.phpunit.de/",
         "keywords": [
-            "templating"
+            "phpunit",
+            "testing",
+            "xunit"
         ]
     },
     {
@@ -2587,40 +2401,79 @@
         ]
     },
     {
-        "name": "guzzlehttp/guzzle",
-        "version": "5.0.3",
-        "version_normalized": "5.0.3.0",
+        "name": "mikey179/vfsStream",
+        "version": "v1.4.0",
+        "version_normalized": "1.4.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/guzzle/guzzle.git",
-            "reference": "6c72627de1d66832e4270e36e56acdb0d1d8f282"
+            "url": "https://github.com/mikey179/vfsStream.git",
+            "reference": "61b12172292cf539685507aa65b076c1530e83c1"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/guzzle/guzzle/zipball/6c72627de1d66832e4270e36e56acdb0d1d8f282",
-            "reference": "6c72627de1d66832e4270e36e56acdb0d1d8f282",
+            "url": "https://api.github.com/repos/mikey179/vfsStream/zipball/61b12172292cf539685507aa65b076c1530e83c1",
+            "reference": "61b12172292cf539685507aa65b076c1530e83c1",
             "shasum": ""
         },
         "require": {
-            "guzzlehttp/ringphp": "~1.0",
-            "php": ">=5.4.0"
+            "php": ">=5.3.0"
         },
         "require-dev": {
-            "ext-curl": "*",
-            "phpunit/phpunit": "~4.0",
-            "psr/log": "~1.0"
+            "phpunit/phpunit": "~4.2"
         },
-        "time": "2014-11-04 07:09:15",
+        "time": "2014-09-14 10:18:53",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "5.0-dev"
+                "dev-master": "1.4.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "GuzzleHttp\\": "src/"
+            "psr-0": {
+                "org\\bovigo\\vfs\\": "src/main/php"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "BSD"
+        ],
+        "homepage": "http://vfs.bovigo.org/"
+    },
+    {
+        "name": "stack/builder",
+        "version": "v1.0.2",
+        "version_normalized": "1.0.2.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/stackphp/builder.git",
+            "reference": "b4af43e7b7f3f7fac919ff475b29f7c5dc7b23b7"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/stackphp/builder/zipball/b4af43e7b7f3f7fac919ff475b29f7c5dc7b23b7",
+            "reference": "b4af43e7b7f3f7fac919ff475b29f7c5dc7b23b7",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.0",
+            "symfony/http-foundation": "~2.1",
+            "symfony/http-kernel": "~2.1"
+        },
+        "require-dev": {
+            "silex/silex": "~1.0"
+        },
+        "time": "2014-01-28 19:42:24",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.0-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "Stack": "src"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -2629,21 +2482,66 @@
         ],
         "authors": [
             {
-                "name": "Michael Dowling",
-                "email": "mtdowling@gmail.com",
-                "homepage": "https://github.com/mtdowling"
+                "name": "Igor Wiedler",
+                "email": "igor@wiedler.ch",
+                "homepage": "http://wiedler.ch/igor/"
             }
         ],
-        "description": "Guzzle is a PHP HTTP client library and framework for building RESTful web service clients",
-        "homepage": "http://guzzlephp.org/",
+        "description": "Builder for stack middlewares based on HttpKernelInterface.",
         "keywords": [
-            "client",
-            "curl",
-            "framework",
-            "http",
-            "http client",
-            "rest",
-            "web service"
+            "stack"
+        ]
+    },
+    {
+        "name": "egulias/email-validator",
+        "version": "1.2.5",
+        "version_normalized": "1.2.5.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/egulias/EmailValidator.git",
+            "reference": "518f80a0ff7c1a35780e7702f4262c8c6f2b807f"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/518f80a0ff7c1a35780e7702f4262c8c6f2b807f",
+            "reference": "518f80a0ff7c1a35780e7702f4262c8c6f2b807f",
+            "shasum": ""
+        },
+        "require": {
+            "doctrine/lexer": "~1.0",
+            "php": ">= 5.3.3"
+        },
+        "require-dev": {
+            "satooshi/php-coveralls": "dev-master"
+        },
+        "time": "2014-11-06 08:59:44",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.3.x-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "Egulias\\": "src/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Eduardo Gulias Davis"
+            }
+        ],
+        "description": "A library for validating emails",
+        "homepage": "https://github.com/egulias/EmailValidator",
+        "keywords": [
+            "email",
+            "validation",
+            "validator"
         ]
     }
 ]
diff --git a/core/vendor/doctrine/common/README.md b/core/vendor/doctrine/common/README.md
index c63f762..30a080f 100644
--- a/core/vendor/doctrine/common/README.md
+++ b/core/vendor/doctrine/common/README.md
@@ -7,6 +7,6 @@ The Doctrine Common project is a library that provides extensions to core PHP fu
 ## More resources:
 
 * [Website](http://www.doctrine-project.org)
-* [Documentation](http://www.doctrine-project.org/projects/common/current/docs/en)
+* [Documentation](http://docs.doctrine-project.org/projects/doctrine-common/en/latest/)
 * [Issue Tracker](http://www.doctrine-project.org/jira/browse/DCOM)
 * [Downloads](http://github.com/doctrine/common/downloads)
diff --git a/core/vendor/doctrine/common/composer.json b/core/vendor/doctrine/common/composer.json
index 4f4f215..325c75c 100644
--- a/core/vendor/doctrine/common/composer.json
+++ b/core/vendor/doctrine/common/composer.json
@@ -29,7 +29,7 @@
     },
     "extra": {
         "branch-alias": {
-            "dev-master": "2.5.x-dev"
+            "dev-master": "2.4.x-dev"
         }
     },
     "archive": {
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/AnnotationDriver.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/AnnotationDriver.php
index 1737243..6668e61 100644
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/AnnotationDriver.php
+++ b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/AnnotationDriver.php
@@ -49,6 +49,13 @@
     protected $paths = array();
 
     /**
+     * The paths excluded from path where to look for mapping files.
+     *
+     * @var array
+     */
+    protected $excludePaths = array();
+
+    /**
      * The file extension of mapping documents.
      *
      * @var string
@@ -107,7 +114,27 @@ public function getPaths()
     }
 
     /**
-     * Retrieves the current annotation reader.
+     * Append exclude lookup paths to metadata driver.
+     *
+     * @param array $paths
+     */
+    public function addExcludePaths(array $paths)
+    {
+        $this->excludePaths = array_unique(array_merge($this->excludePaths, $paths));
+    }
+
+    /**
+     * Retrieve the defined metadata lookup exclude paths.
+     *
+     * @return array
+     */
+    public function getExcludePaths()
+    {
+        return $this->excludePaths;
+    }
+
+    /**
+     * Retrieve the current annotation reader
      *
      * @return AnnotationReader
      */
@@ -192,7 +219,20 @@ public function getAllClassNames()
             );
 
             foreach ($iterator as $file) {
-                $sourceFile = realpath($file[0]);
+                $sourceFile = $file[0];
+
+                if ( ! preg_match('(^phar:)i', $sourceFile)) {
+                    $sourceFile = realpath($sourceFile);
+                }
+
+                foreach ($this->excludePaths as $excludePath) {
+                    $exclude = str_replace('\\', '/', realpath($excludePath));
+                    $current = str_replace('\\', '/', $sourceFile);
+
+                    if (strpos($current, $exclude) !== false) {
+                        continue 2;
+                    }
+                }
 
                 require_once $sourceFile;
 
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php
index c5a37a8..b9acf9c 100644
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php
+++ b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php
@@ -21,6 +21,9 @@
 
 use ReflectionClass;
 use ReflectionProperty;
+use ReflectionMethod;
+use ReflectionException;
+
 use Doctrine\Common\Reflection\RuntimePublicReflectionProperty;
 use Doctrine\Common\Persistence\Mapping\MappingException;
 
@@ -92,6 +95,12 @@ public function getAccessibleProperty($class, $property)
      */
     public function hasPublicMethod($class, $method)
     {
-        return method_exists($class, $method) && is_callable(array($class, $method));
+        try {
+            $reflectionMethod = new ReflectionMethod($class, $method);
+        } catch (ReflectionException $e) {
+            return false;
+        }
+
+        return $reflectionMethod->isPublic();
     }
 }
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/StaticReflectionService.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/StaticReflectionService.php
index f903097..e5bcb06 100644
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/StaticReflectionService.php
+++ b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/StaticReflectionService.php
@@ -78,6 +78,6 @@ public function getAccessibleProperty($class, $property)
      */
     public function hasPublicMethod($class, $method)
     {
-        return method_exists($class, $method) && is_callable(array($class, $method));
+        return true;
     }
 }
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Util/Debug.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Util/Debug.php
index 0959ce5..8f25c9a 100644
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Util/Debug.php
+++ b/core/vendor/doctrine/common/lib/Doctrine/Common/Util/Debug.php
@@ -48,17 +48,10 @@ private function __construct()
      * @param mixed   $var       The variable to dump.
      * @param integer $maxDepth  The maximum nesting level for object properties.
      * @param boolean $stripTags Whether output should strip HTML tags.
-     * @param boolean $echo      Send the dumped value to the output buffer
-     *
-     * @return string
      */
-    public static function dump($var, $maxDepth = 2, $stripTags = true, $echo = true)
+    public static function dump($var, $maxDepth = 2, $stripTags = true)
     {
-        $html = ini_get('html_errors');
-
-        if ($html !== true) {
-            ini_set('html_errors', true);
-        }
+        ini_set('html_errors', 'On');
 
         if (extension_loaded('xdebug')) {
             ini_set('xdebug.var_display_max_depth', $maxDepth);
@@ -68,20 +61,12 @@ public static function dump($var, $maxDepth = 2, $stripTags = true, $echo = true
 
         ob_start();
         var_dump($var);
-
         $dump = ob_get_contents();
-
         ob_end_clean();
 
-        $dumpText = ($stripTags ? strip_tags(html_entity_decode($dump)) : $dump);
+        echo ($stripTags ? strip_tags(html_entity_decode($dump)) : $dump);
 
-        ini_set('html_errors', $html);
-        
-        if ($echo) {
-            echo $dumpText;
-        }
-        
-        return $dumpText;
+        ini_set('html_errors', 'Off');
     }
 
     /**
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Version.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Version.php
index bc9e2bd..ea1760a 100644
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Version.php
+++ b/core/vendor/doctrine/common/lib/Doctrine/Common/Version.php
@@ -34,7 +34,7 @@ class Version
     /**
      * Current Doctrine Version.
      */
-    const VERSION = '2.5.0-DEV';
+    const VERSION = '2.4.2';
 
     /**
      * Compares a Doctrine version with the current one.
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/AnnotationDriverTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/AnnotationDriverTest.php
new file mode 100644
index 0000000..ab6cc5c
--- /dev/null
+++ b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/AnnotationDriverTest.php
@@ -0,0 +1,29 @@
+<?php
+
+namespace Doctrine\Tests\Common\Persistence\Mapping;
+
+use Doctrine\Common\Annotations\AnnotationReader;
+use Doctrine\Common\Persistence\Mapping\Driver\AnnotationDriver;
+use Doctrine\Common\Persistence\Mapping\ClassMetadata;
+
+class AnnotationDriverTest extends \PHPUnit_Framework_TestCase
+{
+    public function testGetAllClassNames()
+    {
+        $reader = new AnnotationReader();
+        $driver = new SimpleAnnotationDriver($reader, array(__DIR__ . '/_files/annotation'));
+
+        $classes = $driver->getAllClassNames();
+
+        $this->assertEquals(array('Doctrine\TestClass'), $classes);
+    }
+}
+
+class SimpleAnnotationDriver extends AnnotationDriver
+{
+    protected $entityAnnotationClasses = array('Doctrine\Entity' => true);
+
+    public function loadMetadataForClass($className, ClassMetadata $metadata)
+    {
+    }
+}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticReflectionServiceTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticReflectionServiceTest.php
index 1dd7a7a..9054b6c 100644
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticReflectionServiceTest.php
+++ b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticReflectionServiceTest.php
@@ -58,7 +58,7 @@ public function testGetReflectionClass()
     public function testGetMethods()
     {
         $this->assertTrue($this->reflectionService->hasPublicMethod(__CLASS__, "testGetMethods"));
-        $this->assertFalse($this->reflectionService->hasPublicMethod(__CLASS__, "testGetMethods2"));
+        $this->assertTrue($this->reflectionService->hasPublicMethod(__CLASS__, "testGetMethods2"));
     }
 
     public function testGetAccessibleProperty()
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/annotation/TestClass.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/annotation/TestClass.php
new file mode 100644
index 0000000..ff03568
--- /dev/null
+++ b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/annotation/TestClass.php
@@ -0,0 +1,17 @@
+<?php
+
+namespace Doctrine;
+
+/**
+ * @Doctrine\Entity
+ */
+class TestClass
+{
+}
+
+/**
+ * @Annotation
+ */
+class Entity
+{
+}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/DebugTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/DebugTest.php
index 66e8337..f6fc069 100644
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/DebugTest.php
+++ b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/DebugTest.php
@@ -37,29 +37,4 @@ public function testExportArrayTraversable()
         $var = Debug::export($it, 5);
         $this->assertContains('foobar', $var->__STORAGE__);
     }
-
-    public function testReturnsOutput()
-    {
-        ob_start();
-
-        $dump        = Debug::dump('foo');
-        $outputValue = ob_get_contents();
-
-        ob_end_clean();
-
-        $this->assertSame($outputValue, $dump);
-    }
-
-    public function testDisablesOutput()
-    {
-        ob_start();
-
-        $dump        = Debug::dump('foo', 2, true, false);
-        $outputValue = ob_get_contents();
-
-        ob_end_clean();
-
-        $this->assertEmpty($outputValue);
-        $this->assertNotSame($outputValue, $dump);
-    }
 }
diff --git a/core/vendor/doctrine/common/tests/NativePhpunitTask.php b/core/vendor/doctrine/common/tests/NativePhpunitTask.php
deleted file mode 100644
index 7033283..0000000
--- a/core/vendor/doctrine/common/tests/NativePhpunitTask.php
+++ /dev/null
@@ -1,246 +0,0 @@
-<?php
-/**
- * Native PHPUnit Task
- *
- * LICENSE
- *
- * This source file is subject to the new BSD license that is bundled
- * with this package in the file LICENSE.txt.
- * If you did not receive a copy of the license and are unable to
- * obtain it through the world-wide-web, please send an email
- * to kontakt@beberlei.de so I can send you a copy immediately.
- */
-
-require_once 'PHPUnit/Autoload.php';
-
-/**
- * A more flexible and powerful PHPUnit Task than the native Phing one.
- *
- * Plus forward compatibility for PHPUnit 3.5 and later is ensured by using the PHPUnit Test Runner instead of implementing one.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-class NativePhpunitTask extends Task
-{
-    private $test;
-    private $testfile;
-    private $testdirectory;
-    private $configuration = null;
-    private $coverageClover = null;
-    private $junitlogfile = null;
-    private $haltonfailure = true;
-    private $haltonerror = true;
-
-    public function setTestdirectory($directory) {
-        $this->testdirectory = $directory;
-    }
-
-    public function setTest($test) {
-        $this->test = $test;
-    }
-
-    public function setTestfile($testfile) {
-        $this->testfile = $testfile;
-    }
-
-    public function setJunitlogfile($junitlogfile) {
-        if (strlen($junitlogfile) == 0) {
-            $junitlogfile = NULL;
-        }
-
-        $this->junitlogfile = $junitlogfile;
-    }
-
-    public function setConfiguration($configuration) {
-        if (strlen($configuration) == 0) {
-            $configuration = NULL;
-        }
-
-        $this->configuration = $configuration;
-    }
-
-    public function setCoverageClover($coverageClover) {
-        if (strlen($coverageClover) == 0) {
-            $coverageClover = NULL;
-        }
-
-        $this->coverageClover = $coverageClover;
-    }
-
-    public function setHaltonfailure($haltonfailures) {
-        $this->haltonfailure = $haltonfailures;
-    }
-
-    public function setHaltonerror($haltonerrors) {
-        $this->haltonerror = $haltonerrors;
-    }
-
-    public function init()
-    {
-        require_once "PHPUnit/Runner/Version.php";
-        $version = PHPUnit_Runner_Version::id();
-
-        if (version_compare($version, '3.4.0') < 0) {
-            throw new BuildException("NativePHPUnitTask requires PHPUnit version >= 3.2.0", $this->getLocation());
-        }
-
-        require_once 'PHPUnit/Util/Filter.php';
-
-        // point PHPUnit_MAIN_METHOD define to non-existing method
-        if (!defined('PHPUnit_MAIN_METHOD')) {
-            define('PHPUnit_MAIN_METHOD', 'PHPUnitTask::undefined');
-        }
-    }
-
-    public function main()
-    {
-        if (!is_dir(realpath($this->testdirectory))) {
-            throw new BuildException("NativePHPUnitTask requires a Test Directory path given, '".$this->testdirectory."' given.");
-        }
-        set_include_path(realpath($this->testdirectory) . PATH_SEPARATOR . get_include_path());
-
-        $printer = new NativePhpunitPrinter();
-
-        $arguments = array(
-            'configuration' => $this->configuration,
-            'coverageClover' => $this->coverageClover,
-            'junitLogfile' => $this->junitlogfile,
-            'printer' => $printer,
-        );
-
-        $runner = new PHPUnit_TextUI_TestRunner();
-        $suite = $runner->getTest($this->test, $this->testfile, true);
-
-        try {
-            $result = $runner->doRun($suite, $arguments);
-            /* @var $result PHPUnit_Framework_TestResult */
-
-            if ( ($this->haltonfailure && $result->failureCount() > 0) || ($this->haltonerror && $result->errorCount() > 0) ) {
-                throw new BuildException("PHPUnit: ".$result->failureCount()." Failures and ".$result->errorCount()." Errors, ".
-                    "last failure message: ".$printer->getMessages());
-            }
-
-            $this->log("PHPUnit Success: ".count($result->passed())." tests passed, no ".
-                "failures (".$result->skippedCount()." skipped, ".$result->notImplementedCount()." not implemented)");
-
-            // Hudson for example doesn't like the backslash in class names
-            if (is_file($this->coverageClover)) {
-                $this->log("Generated Clover Coverage XML to: ".$this->coverageClover);
-                $content = file_get_contents($this->coverageClover);
-                $content = str_replace("\\", ".", $content);
-                file_put_contents($this->coverageClover, $content);
-                unset($content);
-            }
-
-        } catch(\Exception $e) {
-            throw new BuildException("NativePhpunitTask failed: ".$e->getMessage());
-        }
-    }
-}
-
-class NativePhpunitPrinter extends PHPUnit_Util_Printer implements PHPUnit_Framework_TestListener
-{
-    private $_messages = array();
-
-    public function write($buffer)
-    {
-        // do nothing
-    }
-
-    public function getMessages()
-    {
-        return $this->_messages;
-    }
-
-    /**
-     * An error occurred.
-     *
-     * @param  PHPUnit_Framework_Test $test
-     * @param  Exception              $e
-     * @param  float                  $time
-     */
-    public function addError(PHPUnit_Framework_Test $test, Exception $e, $time)
-    {
-        $this->_messages[] = "Test ERROR: ".$test->getName().": ".$e->getMessage();
-    }
-
-    /**
-     * A failure occurred.
-     *
-     * @param  PHPUnit_Framework_Test                 $test
-     * @param  PHPUnit_Framework_AssertionFailedError $e
-     * @param  float                                  $time
-     */
-    public function addFailure(PHPUnit_Framework_Test $test, PHPUnit_Framework_AssertionFailedError $e, $time)
-    {
-        $this->_messages[] = "Test FAILED: ".$test->getName().": ".$e->getMessage();
-    }
-
-    /**
-     * Incomplete test.
-     *
-     * @param  PHPUnit_Framework_Test $test
-     * @param  Exception              $e
-     * @param  float                  $time
-     */
-    public function addIncompleteTest(PHPUnit_Framework_Test $test, Exception $e, $time)
-    {
-
-    }
-
-    /**
-     * Skipped test.
-     *
-     * @param  PHPUnit_Framework_Test $test
-     * @param  Exception              $e
-     * @param  float                  $time
-     * @since  Method available since Release 3.0.0
-     */
-    public function addSkippedTest(PHPUnit_Framework_Test $test, Exception $e, $time)
-    {
-
-    }
-
-    /**
-     * A test suite started.
-     *
-     * @param  PHPUnit_Framework_TestSuite $suite
-     * @since  Method available since Release 2.2.0
-     */
-    public function startTestSuite(PHPUnit_Framework_TestSuite $suite)
-    {
-
-    }
-
-    /**
-     * A test suite ended.
-     *
-     * @param  PHPUnit_Framework_TestSuite $suite
-     * @since  Method available since Release 2.2.0
-     */
-    public function endTestSuite(PHPUnit_Framework_TestSuite $suite)
-    {
-
-    }
-
-    /**
-     * A test started.
-     *
-     * @param  PHPUnit_Framework_Test $test
-     */
-    public function startTest(PHPUnit_Framework_Test $test)
-    {
-
-    }
-
-    /**
-     * A test ended.
-     *
-     * @param  PHPUnit_Framework_Test $test
-     * @param  float                  $time
-     */
-    public function endTest(PHPUnit_Framework_Test $test, $time)
-    {
-
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/.gitignore b/core/vendor/doctrine/instantiator/.gitignore
deleted file mode 100644
index 9a63932..0000000
--- a/core/vendor/doctrine/instantiator/.gitignore
+++ /dev/null
@@ -1,5 +0,0 @@
-phpunit.xml
-composer.lock
-build
-vendor
-coverage.clover
\ No newline at end of file
diff --git a/core/vendor/doctrine/instantiator/.scrutinizer.yml b/core/vendor/doctrine/instantiator/.scrutinizer.yml
deleted file mode 100644
index aad5e40..0000000
--- a/core/vendor/doctrine/instantiator/.scrutinizer.yml
+++ /dev/null
@@ -1,46 +0,0 @@
-before_commands:
-    - "composer install --prefer-source"
-
-tools:
-    external_code_coverage:
-        timeout: 600
-    php_code_coverage:
-        enabled: true
-        test_command: ./vendor/bin/phpunit
-    php_code_sniffer:
-        enabled: true
-        config:
-            standard: PSR2
-        filter:
-            paths: ["src/*", "tests/*"]
-    php_cpd:
-        enabled: true
-        excluded_dirs: ["build/*", "tests", "vendor"]
-    php_cs_fixer:
-        enabled: true
-        config:
-            level: all
-        filter:
-            paths: ["src/*", "tests/*"]
-    php_loc:
-        enabled: true
-        excluded_dirs: ["build", "tests", "vendor"]
-    php_mess_detector:
-        enabled: true
-        config:
-            ruleset: phpmd.xml.dist
-            design_rules: { eval_expression: false }
-        filter:
-            paths: ["src/*"]
-    php_pdepend:
-        enabled: true
-        excluded_dirs: ["build", "tests", "vendor"]
-    php_analyzer:
-        enabled: true
-        filter:
-            paths: ["src/*", "tests/*"]
-    php_hhvm:
-        enabled: true
-        filter:
-            paths: ["src/*", "tests/*"]
-    sensiolabs_security_checker: true
diff --git a/core/vendor/doctrine/instantiator/.travis.install.sh b/core/vendor/doctrine/instantiator/.travis.install.sh
deleted file mode 100755
index e4f1cb2..0000000
--- a/core/vendor/doctrine/instantiator/.travis.install.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-set -x
-if [ "$TRAVIS_PHP_VERSION" = 'hhvm' ] || [ "$TRAVIS_PHP_VERSION" = 'hhvm-nightly' ] ; then
-    curl -sS https://getcomposer.org/installer > composer-installer.php
-    hhvm composer-installer.php
-    hhvm -v ResourceLimit.SocketDefaultTimeout=30 -v Http.SlowQueryThreshold=30000 composer.phar update --prefer-source
-elif [ "$TRAVIS_PHP_VERSION" = '5.3.3' ] ; then
-    composer self-update
-    composer update --prefer-source --no-dev
-    composer dump-autoload
-else
-    composer self-update
-    composer update --prefer-source
-fi
diff --git a/core/vendor/doctrine/instantiator/.travis.yml b/core/vendor/doctrine/instantiator/.travis.yml
deleted file mode 100644
index 0f686a9..0000000
--- a/core/vendor/doctrine/instantiator/.travis.yml
+++ /dev/null
@@ -1,26 +0,0 @@
-language: php
-
-php:
-  - 5.3.3
-  - 5.3
-  - 5.4
-  - 5.5
-  - 5.6
-  - hhvm
-  - hhvm-nightly
-
-before_script:
-  - ./.travis.install.sh
-
-script:
-  - sh -c "if [ '$TRAVIS_PHP_VERSION' = '5.3.3' ]; then phpunit; fi"
-  - sh -c "if [ '$TRAVIS_PHP_VERSION' != '5.3.3' ]; then ./vendor/bin/phpunit; fi"
-  - sh -c "if [ '$TRAVIS_PHP_VERSION' != '5.3.3' ]; then ./vendor/bin/phpcs --standard=PSR2 ./src/ ./tests/; fi"
-  - sh -c "if [[ '$TRAVIS_PHP_VERSION' != '5.3.3' && '$TRAVIS_PHP_VERSION' != '5.4.29'  && '$TRAVIS_PHP_VERSION' != '5.5.13' ]]; then php -n ./vendor/bin/athletic -p ./tests/DoctrineTest/InstantiatorPerformance/ -f GroupedFormatter; fi"
-
-after_script:
-  - sh -c "if [ '$TRAVIS_PHP_VERSION' != '5.3.3' ]; then wget https://scrutinizer-ci.com/ocular.phar; php ocular.phar code-coverage:upload --format=php-clover coverage.clover; fi"
-
-matrix:
-  allow_failures:
-    - php: hhvm-nightly
diff --git a/core/vendor/doctrine/instantiator/CONTRIBUTING.md b/core/vendor/doctrine/instantiator/CONTRIBUTING.md
deleted file mode 100644
index 75b84b2..0000000
--- a/core/vendor/doctrine/instantiator/CONTRIBUTING.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Contributing
-
- * Coding standard for the project is [PSR-2](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md)
- * The project will follow strict [object calisthenics](http://www.slideshare.net/guilhermeblanco/object-calisthenics-applied-to-php)
- * Any contribution must provide tests for additional introduced conditions
- * Any un-confirmed issue needs a failing test case before being accepted
- * Pull requests must be sent from a new hotfix/feature branch, not from `master`.
-
-## Installation
-
-To install the project and run the tests, you need to clone it first:
-
-```sh
-$ git clone git://github.com/doctrine/instantiator.git
-```
-
-You will then need to run a composer installation:
-
-```sh
-$ cd Instantiator
-$ curl -s https://getcomposer.org/installer | php
-$ php composer.phar update
-```
-
-## Testing
-
-The PHPUnit version to be used is the one installed as a dev- dependency via composer:
-
-```sh
-$ ./vendor/bin/phpunit
-```
-
-Accepted coverage for new contributions is 80%. Any contribution not satisfying this requirement 
-won't be merged.
-
diff --git a/core/vendor/doctrine/instantiator/LICENSE b/core/vendor/doctrine/instantiator/LICENSE
deleted file mode 100644
index 4d983d1..0000000
--- a/core/vendor/doctrine/instantiator/LICENSE
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (c) 2014 Doctrine Project
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/core/vendor/doctrine/instantiator/README.md b/core/vendor/doctrine/instantiator/README.md
deleted file mode 100644
index 393ec7c..0000000
--- a/core/vendor/doctrine/instantiator/README.md
+++ /dev/null
@@ -1,40 +0,0 @@
-# Instantiator
-
-This library provides a way of avoiding usage of constructors when instantiating PHP classes.
-
-[![Build Status](https://travis-ci.org/doctrine/instantiator.svg?branch=master)](https://travis-ci.org/doctrine/instantiator)
-[![Code Coverage](https://scrutinizer-ci.com/g/doctrine/instantiator/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/doctrine/instantiator/?branch=master)
-[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/doctrine/instantiator/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/doctrine/instantiator/?branch=master)
-[![Dependency Status](https://www.versioneye.com/package/php--doctrine--instantiator/badge.svg)](https://www.versioneye.com/package/php--doctrine--instantiator)
-[![HHVM Status](http://hhvm.h4cc.de/badge/doctrine/instantiator.png)](http://hhvm.h4cc.de/package/doctrine/instantiator)
-
-[![Latest Stable Version](https://poser.pugx.org/doctrine/instantiator/v/stable.png)](https://packagist.org/packages/doctrine/instantiator)
-[![Latest Unstable Version](https://poser.pugx.org/doctrine/instantiator/v/unstable.png)](https://packagist.org/packages/doctrine/instantiator)
-
-## Installation
-
-The suggested installation method is via [composer](https://getcomposer.org/):
-
-```sh
-php composer.phar require "doctrine/instantiator:~1.0.3"
-```
-
-## Usage
-
-The instantiator is able to create new instances of any class without using the constructor or any API of the class
-itself:
-
-```php
-$instantiator = new \Doctrine\Instantiator\Instantiator();
-
-$instance = $instantiator->instantiate('My\\ClassName\\Here');
-```
-
-## Contributing
-
-Please read the [CONTRIBUTING.md](CONTRIBUTING.md) contents if you wish to help out!
-
-## Credits
-
-This library was migrated from [ocramius/instantiator](https://github.com/Ocramius/Instantiator), which
-has been donated to the doctrine organization, and which is now deprecated in favour of this package.
diff --git a/core/vendor/doctrine/instantiator/composer.json b/core/vendor/doctrine/instantiator/composer.json
deleted file mode 100644
index 89d59f6..0000000
--- a/core/vendor/doctrine/instantiator/composer.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
-    "name":              "doctrine/instantiator",
-    "description":       "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
-    "type":              "library",
-    "license":           "MIT",
-    "homepage":          "https://github.com/doctrine/instantiator",
-    "keywords":          [
-        "instantiate",
-        "constructor"
-    ],
-    "authors": [
-        {
-            "name":     "Marco Pivetta",
-            "email":    "ocramius@gmail.com",
-            "homepage": "http://ocramius.github.com/"
-        }
-    ],
-    "require": {
-        "php": ">=5.3,<8.0-DEV"
-    },
-    "require-dev": {
-        "ext-phar":                  "*",
-        "ext-pdo":                   "*",
-        "phpunit/phpunit":           "~4.0",
-        "squizlabs/php_codesniffer": "2.0.*@ALPHA",
-        "athletic/athletic":         "~0.1.8"
-    },
-    "autoload": {
-        "psr-0": {
-            "Doctrine\\Instantiator\\": "src"
-        }
-    },
-    "autoload-dev": {
-        "psr-0": {
-            "DoctrineTest\\InstantiatorPerformance\\": "tests",
-            "DoctrineTest\\InstantiatorTest\\": "tests",
-            "DoctrineTest\\InstantiatorTestAsset\\": "tests"
-        }
-    },
-    "extra": {
-        "branch-alias": {
-            "dev-master": "1.0.x-dev"
-        }
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/phpmd.xml.dist b/core/vendor/doctrine/instantiator/phpmd.xml.dist
deleted file mode 100644
index 8254105..0000000
--- a/core/vendor/doctrine/instantiator/phpmd.xml.dist
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<ruleset
-    name="Instantiator rules"
-    xmlns="http://pmd.sf.net/ruleset/1.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd"
-    xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd"
->
-    <rule ref="rulesets/cleancode.xml">
-        <!-- static access is used for caching purposes -->
-        <exclude name="StaticAccess"/>
-    </rule>
-    <rule ref="rulesets/codesize.xml"/>
-    <rule ref="rulesets/controversial.xml"/>
-    <rule ref="rulesets/design.xml"/>
-    <rule ref="rulesets/naming.xml"/>
-    <rule ref="rulesets/unusedcode.xml"/>
-    <rule
-        name="NPathComplexity"
-        message="The {0} {1}() has an NPath complexity of {2}. The configured NPath complexity threshold is {3}."
-        class="PHP_PMD_Rule_Design_NpathComplexity"
-    >
-        <properties>
-            <property name="minimum" description="The npath reporting threshold" value="10"/>
-        </properties>
-    </rule>
-</ruleset>
diff --git a/core/vendor/doctrine/instantiator/phpunit.xml.dist b/core/vendor/doctrine/instantiator/phpunit.xml.dist
deleted file mode 100644
index 178ba17..0000000
--- a/core/vendor/doctrine/instantiator/phpunit.xml.dist
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0"?>
-<phpunit
-    bootstrap="./vendor/autoload.php"
-    colors="true"
-    convertErrorsToExceptions="true"
-    convertNoticesToExceptions="true"
-    convertWarningsToExceptions="true"
-    verbose="true"
-    stopOnFailure="false"
-    processIsolation="false"
-    backupGlobals="false"
-    syntaxCheck="true"
->
-    <testsuite name="Doctrine\Instantiator tests">
-        <directory>./tests/DoctrineTest/InstantiatorTest</directory>
-    </testsuite>
-    <filter>
-        <whitelist addUncoveredFilesFromWhitelist="true">
-            <directory suffix=".php">./src</directory>
-        </whitelist>
-    </filter>
-    <logging>
-        <log type="coverage-clover" target="./coverage.clover"/>
-    </logging>
-</phpunit>
diff --git a/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/ExceptionInterface.php b/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/ExceptionInterface.php
deleted file mode 100644
index 3065375..0000000
--- a/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/ExceptionInterface.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Instantiator\Exception;
-
-/**
- * Base exception marker interface for the instantiator component
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-interface ExceptionInterface
-{
-}
diff --git a/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/InvalidArgumentException.php b/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/InvalidArgumentException.php
deleted file mode 100644
index ea8d28c..0000000
--- a/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/InvalidArgumentException.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Instantiator\Exception;
-
-use InvalidArgumentException as BaseInvalidArgumentException;
-use ReflectionClass;
-
-/**
- * Exception for invalid arguments provided to the instantiator
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class InvalidArgumentException extends BaseInvalidArgumentException implements ExceptionInterface
-{
-    /**
-     * @param string $className
-     *
-     * @return self
-     */
-    public static function fromNonExistingClass($className)
-    {
-        if (interface_exists($className)) {
-            return new self(sprintf('The provided type "%s" is an interface, and can not be instantiated', $className));
-        }
-
-        if (PHP_VERSION_ID >= 50400 && trait_exists($className)) {
-            return new self(sprintf('The provided type "%s" is a trait, and can not be instantiated', $className));
-        }
-
-        return new self(sprintf('The provided class "%s" does not exist', $className));
-    }
-
-    /**
-     * @param ReflectionClass $reflectionClass
-     *
-     * @return self
-     */
-    public static function fromAbstractClass(ReflectionClass $reflectionClass)
-    {
-        return new self(sprintf(
-            'The provided class "%s" is abstract, and can not be instantiated',
-            $reflectionClass->getName()
-        ));
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/UnexpectedValueException.php b/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/UnexpectedValueException.php
deleted file mode 100644
index 1681e56..0000000
--- a/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Exception/UnexpectedValueException.php
+++ /dev/null
@@ -1,79 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Instantiator\Exception;
-
-use Exception;
-use ReflectionClass;
-use UnexpectedValueException as BaseUnexpectedValueException;
-
-/**
- * Exception for given parameters causing invalid/unexpected state on instantiation
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class UnexpectedValueException extends BaseUnexpectedValueException implements ExceptionInterface
-{
-    /**
-     * @param ReflectionClass $reflectionClass
-     * @param Exception       $exception
-     *
-     * @return self
-     */
-    public static function fromSerializationTriggeredException(ReflectionClass $reflectionClass, Exception $exception)
-    {
-        return new self(
-            sprintf(
-                'An exception was raised while trying to instantiate an instance of "%s" via un-serialization',
-                $reflectionClass->getName()
-            ),
-            0,
-            $exception
-        );
-    }
-
-    /**
-     * @param ReflectionClass $reflectionClass
-     * @param string          $errorString
-     * @param int             $errorCode
-     * @param string          $errorFile
-     * @param int             $errorLine
-     *
-     * @return UnexpectedValueException
-     */
-    public static function fromUncleanUnSerialization(
-        ReflectionClass $reflectionClass,
-        $errorString,
-        $errorCode,
-        $errorFile,
-        $errorLine
-    ) {
-        return new self(
-            sprintf(
-                'Could not produce an instance of "%s" via un-serialization, since an error was triggered '
-                . 'in file "%s" at line "%d"',
-                $reflectionClass->getName(),
-                $errorFile,
-                $errorLine
-            ),
-            0,
-            new Exception($errorString, $errorCode)
-        );
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Instantiator.php b/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Instantiator.php
deleted file mode 100644
index 98868cf..0000000
--- a/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/Instantiator.php
+++ /dev/null
@@ -1,254 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Instantiator;
-
-use Closure;
-use Doctrine\Instantiator\Exception\InvalidArgumentException;
-use Doctrine\Instantiator\Exception\UnexpectedValueException;
-use Exception;
-use ReflectionClass;
-
-/**
- * {@inheritDoc}
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-final class Instantiator implements InstantiatorInterface
-{
-    /**
-     * Markers used internally by PHP to define whether {@see \unserialize} should invoke
-     * the method {@see \Serializable::unserialize()} when dealing with classes implementing
-     * the {@see \Serializable} interface.
-     */
-    const SERIALIZATION_FORMAT_USE_UNSERIALIZER   = 'C';
-    const SERIALIZATION_FORMAT_AVOID_UNSERIALIZER = 'O';
-
-    /**
-     * @var \Closure[] of {@see \Closure} instances used to instantiate specific classes
-     */
-    private static $cachedInstantiators = array();
-
-    /**
-     * @var object[] of objects that can directly be cloned
-     */
-    private static $cachedCloneables = array();
-
-    /**
-     * {@inheritDoc}
-     */
-    public function instantiate($className)
-    {
-        if (isset(self::$cachedCloneables[$className])) {
-            return clone self::$cachedCloneables[$className];
-        }
-
-        if (isset(self::$cachedInstantiators[$className])) {
-            $factory = self::$cachedInstantiators[$className];
-
-            return $factory();
-        }
-
-        $factory    = self::$cachedInstantiators[$className] = $this->buildFactory($className);
-        $instance   = $factory();
-        $reflection = new ReflectionClass($instance);
-
-        if ($this->isSafeToClone($reflection)) {
-            self::$cachedCloneables[$className] = clone $instance;
-        }
-
-        return $instance;
-    }
-
-    /**
-     * @internal
-     * @private
-     *
-     * Builds a {@see \Closure} capable of instantiating the given $className without
-     * invoking its constructor.
-     * This method is only exposed as public because of PHP 5.3 compatibility. Do not
-     * use this method in your own code
-     *
-     * @param string $className
-     *
-     * @return Closure
-     */
-    public function buildFactory($className)
-    {
-        $reflectionClass = $this->getReflectionClass($className);
-
-        if ($this->isInstantiableViaReflection($reflectionClass)) {
-            return function () use ($reflectionClass) {
-                return $reflectionClass->newInstanceWithoutConstructor();
-            };
-        }
-
-        $serializedString = sprintf(
-            '%s:%d:"%s":0:{}',
-            $this->getSerializationFormat($reflectionClass),
-            strlen($className),
-            $className
-        );
-
-        $this->attemptInstantiationViaUnSerialization($reflectionClass, $serializedString);
-
-        return function () use ($serializedString) {
-            return unserialize($serializedString);
-        };
-    }
-
-    /**
-     * @param string $className
-     *
-     * @return ReflectionClass
-     *
-     * @throws InvalidArgumentException
-     */
-    private function getReflectionClass($className)
-    {
-        if (! class_exists($className)) {
-            throw InvalidArgumentException::fromNonExistingClass($className);
-        }
-
-        $reflection = new ReflectionClass($className);
-
-        if ($reflection->isAbstract()) {
-            throw InvalidArgumentException::fromAbstractClass($reflection);
-        }
-
-        return $reflection;
-    }
-
-    /**
-     * @param ReflectionClass $reflectionClass
-     * @param string          $serializedString
-     *
-     * @throws UnexpectedValueException
-     *
-     * @return void
-     */
-    private function attemptInstantiationViaUnSerialization(ReflectionClass $reflectionClass, $serializedString)
-    {
-        set_error_handler(function ($code, $message, $file, $line) use ($reflectionClass, & $error) {
-            $error = UnexpectedValueException::fromUncleanUnSerialization(
-                $reflectionClass,
-                $message,
-                $code,
-                $file,
-                $line
-            );
-        });
-
-        try {
-            unserialize($serializedString);
-        } catch (Exception $exception) {
-            restore_error_handler();
-
-            throw UnexpectedValueException::fromSerializationTriggeredException($reflectionClass, $exception);
-        }
-
-        restore_error_handler();
-
-        if ($error) {
-            throw $error;
-        }
-    }
-
-    /**
-     * @param ReflectionClass $reflectionClass
-     *
-     * @return bool
-     */
-    private function isInstantiableViaReflection(ReflectionClass $reflectionClass)
-    {
-        if (\PHP_VERSION_ID >= 50600) {
-            return ! ($reflectionClass->isInternal() && $reflectionClass->isFinal());
-        }
-
-        return \PHP_VERSION_ID >= 50400 && ! $this->hasInternalAncestors($reflectionClass);
-    }
-
-    /**
-     * Verifies whether the given class is to be considered internal
-     *
-     * @param ReflectionClass $reflectionClass
-     *
-     * @return bool
-     */
-    private function hasInternalAncestors(ReflectionClass $reflectionClass)
-    {
-        do {
-            if ($reflectionClass->isInternal()) {
-                return true;
-            }
-        } while ($reflectionClass = $reflectionClass->getParentClass());
-
-        return false;
-    }
-
-    /**
-     * Verifies if the given PHP version implements the `Serializable` interface serialization
-     * with an incompatible serialization format. If that's the case, use serialization marker
-     * "C" instead of "O".
-     *
-     * @link http://news.php.net/php.internals/74654
-     *
-     * @param ReflectionClass $reflectionClass
-     *
-     * @return string the serialization format marker, either self::SERIALIZATION_FORMAT_USE_UNSERIALIZER
-     *                or self::SERIALIZATION_FORMAT_AVOID_UNSERIALIZER
-     */
-    private function getSerializationFormat(ReflectionClass $reflectionClass)
-    {
-        if ($this->isPhpVersionWithBrokenSerializationFormat()
-            && $reflectionClass->implementsInterface('Serializable')
-        ) {
-            return self::SERIALIZATION_FORMAT_USE_UNSERIALIZER;
-        }
-
-        return self::SERIALIZATION_FORMAT_AVOID_UNSERIALIZER;
-    }
-
-    /**
-     * Checks whether the current PHP runtime uses an incompatible serialization format
-     *
-     * @return bool
-     */
-    private function isPhpVersionWithBrokenSerializationFormat()
-    {
-        return PHP_VERSION_ID === 50429 || PHP_VERSION_ID === 50513;
-    }
-
-    /**
-     * Checks if a class is cloneable
-     *
-     * @param ReflectionClass $reflection
-     *
-     * @return bool
-     */
-    private function isSafeToClone(ReflectionClass $reflection)
-    {
-        if (method_exists($reflection, 'isCloneable') && ! $reflection->isCloneable()) {
-            return false;
-        }
-
-        // not cloneable if it implements `__clone`, as we want to avoid calling it
-        return ! $reflection->hasMethod('__clone');
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/InstantiatorInterface.php b/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/InstantiatorInterface.php
deleted file mode 100644
index b665bea..0000000
--- a/core/vendor/doctrine/instantiator/src/Doctrine/Instantiator/InstantiatorInterface.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Instantiator;
-
-/**
- * Instantiator provides utility methods to build objects without invoking their constructors
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-interface InstantiatorInterface
-{
-    /**
-     * @param string $className
-     *
-     * @return object
-     *
-     * @throws \Doctrine\Instantiator\Exception\ExceptionInterface
-     */
-    public function instantiate($className);
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorPerformance/InstantiatorPerformanceEvent.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorPerformance/InstantiatorPerformanceEvent.php
deleted file mode 100644
index 3e8fc6f..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorPerformance/InstantiatorPerformanceEvent.php
+++ /dev/null
@@ -1,96 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorPerformance;
-
-use Athletic\AthleticEvent;
-use Doctrine\Instantiator\Instantiator;
-
-/**
- * Performance tests for {@see \Doctrine\Instantiator\Instantiator}
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class InstantiatorPerformanceEvent extends AthleticEvent
-{
-    /**
-     * @var \Doctrine\Instantiator\Instantiator
-     */
-    private $instantiator;
-
-    /**
-     * {@inheritDoc}
-     */
-    protected function setUp()
-    {
-        $this->instantiator = new Instantiator();
-
-        $this->instantiator->instantiate(__CLASS__);
-        $this->instantiator->instantiate('ArrayObject');
-        $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\SimpleSerializableAsset');
-        $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\SerializableArrayObjectAsset');
-        $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\UnCloneableAsset');
-    }
-
-    /**
-     * @iterations 20000
-     * @baseline
-     * @group instantiation
-     */
-    public function testInstantiateSelf()
-    {
-        $this->instantiator->instantiate(__CLASS__);
-    }
-
-    /**
-     * @iterations 20000
-     * @group instantiation
-     */
-    public function testInstantiateInternalClass()
-    {
-        $this->instantiator->instantiate('ArrayObject');
-    }
-
-    /**
-     * @iterations 20000
-     * @group instantiation
-     */
-    public function testInstantiateSimpleSerializableAssetClass()
-    {
-        $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\SimpleSerializableAsset');
-    }
-
-    /**
-     * @iterations 20000
-     * @group instantiation
-     */
-    public function testInstantiateSerializableArrayObjectAsset()
-    {
-        $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\SerializableArrayObjectAsset');
-    }
-
-    /**
-     * @iterations 20000
-     * @group instantiation
-     */
-    public function testInstantiateUnCloneableAsset()
-    {
-        $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\UnCloneableAsset');
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/Exception/InvalidArgumentExceptionTest.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/Exception/InvalidArgumentExceptionTest.php
deleted file mode 100644
index 39d9b94..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/Exception/InvalidArgumentExceptionTest.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTest\Exception;
-
-use Doctrine\Instantiator\Exception\InvalidArgumentException;
-use PHPUnit_Framework_TestCase;
-use ReflectionClass;
-
-/**
- * Tests for {@see \Doctrine\Instantiator\Exception\InvalidArgumentException}
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- *
- * @covers \Doctrine\Instantiator\Exception\InvalidArgumentException
- */
-class InvalidArgumentExceptionTest extends PHPUnit_Framework_TestCase
-{
-    public function testFromNonExistingTypeWithNonExistingClass()
-    {
-        $className = __CLASS__ . uniqid();
-        $exception = InvalidArgumentException::fromNonExistingClass($className);
-
-        $this->assertInstanceOf('Doctrine\\Instantiator\\Exception\\InvalidArgumentException', $exception);
-        $this->assertSame('The provided class "' . $className . '" does not exist', $exception->getMessage());
-    }
-
-    public function testFromNonExistingTypeWithTrait()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('Need at least PHP 5.4.0, as this test requires traits support to run');
-        }
-
-        $exception = InvalidArgumentException::fromNonExistingClass(
-            'DoctrineTest\\InstantiatorTestAsset\\SimpleTraitAsset'
-        );
-
-        $this->assertSame(
-            'The provided type "DoctrineTest\\InstantiatorTestAsset\\SimpleTraitAsset" is a trait, '
-            . 'and can not be instantiated',
-            $exception->getMessage()
-        );
-    }
-
-    public function testFromNonExistingTypeWithInterface()
-    {
-        $exception = InvalidArgumentException::fromNonExistingClass('Doctrine\\Instantiator\\InstantiatorInterface');
-
-        $this->assertSame(
-            'The provided type "Doctrine\\Instantiator\\InstantiatorInterface" is an interface, '
-            . 'and can not be instantiated',
-            $exception->getMessage()
-        );
-    }
-
-    public function testFromAbstractClass()
-    {
-        $reflection = new ReflectionClass('DoctrineTest\\InstantiatorTestAsset\\AbstractClassAsset');
-        $exception  = InvalidArgumentException::fromAbstractClass($reflection);
-
-        $this->assertSame(
-            'The provided class "DoctrineTest\\InstantiatorTestAsset\\AbstractClassAsset" is abstract, '
-            . 'and can not be instantiated',
-            $exception->getMessage()
-        );
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/Exception/UnexpectedValueExceptionTest.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/Exception/UnexpectedValueExceptionTest.php
deleted file mode 100644
index 84154e7..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/Exception/UnexpectedValueExceptionTest.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTest\Exception;
-
-use Doctrine\Instantiator\Exception\UnexpectedValueException;
-use Exception;
-use PHPUnit_Framework_TestCase;
-use ReflectionClass;
-
-/**
- * Tests for {@see \Doctrine\Instantiator\Exception\UnexpectedValueException}
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- *
- * @covers \Doctrine\Instantiator\Exception\UnexpectedValueException
- */
-class UnexpectedValueExceptionTest extends PHPUnit_Framework_TestCase
-{
-    public function testFromSerializationTriggeredException()
-    {
-        $reflectionClass = new ReflectionClass($this);
-        $previous        = new Exception();
-        $exception       = UnexpectedValueException::fromSerializationTriggeredException($reflectionClass, $previous);
-
-        $this->assertInstanceOf('Doctrine\\Instantiator\\Exception\\UnexpectedValueException', $exception);
-        $this->assertSame($previous, $exception->getPrevious());
-        $this->assertSame(
-            'An exception was raised while trying to instantiate an instance of "'
-            . __CLASS__  . '" via un-serialization',
-            $exception->getMessage()
-        );
-    }
-
-    public function testFromUncleanUnSerialization()
-    {
-        $reflection = new ReflectionClass('DoctrineTest\\InstantiatorTestAsset\\AbstractClassAsset');
-        $exception  = UnexpectedValueException::fromUncleanUnSerialization($reflection, 'foo', 123, 'bar', 456);
-
-        $this->assertInstanceOf('Doctrine\\Instantiator\\Exception\\UnexpectedValueException', $exception);
-        $this->assertSame(
-            'Could not produce an instance of "DoctrineTest\\InstantiatorTestAsset\\AbstractClassAsset" '
-            . 'via un-serialization, since an error was triggered in file "bar" at line "456"',
-            $exception->getMessage()
-        );
-
-        $previous = $exception->getPrevious();
-
-        $this->assertInstanceOf('Exception', $previous);
-        $this->assertSame('foo', $previous->getMessage());
-        $this->assertSame(123, $previous->getCode());
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/InstantiatorTest.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/InstantiatorTest.php
deleted file mode 100644
index e7f6e94..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTest/InstantiatorTest.php
+++ /dev/null
@@ -1,216 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTest;
-
-use Doctrine\Instantiator\Exception\UnexpectedValueException;
-use Doctrine\Instantiator\Instantiator;
-use PHPUnit_Framework_TestCase;
-use ReflectionClass;
-
-/**
- * Tests for {@see \Doctrine\Instantiator\Instantiator}
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- *
- * @covers \Doctrine\Instantiator\Instantiator
- */
-class InstantiatorTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var Instantiator
-     */
-    private $instantiator;
-
-    /**
-     * {@inheritDoc}
-     */
-    protected function setUp()
-    {
-        $this->instantiator = new Instantiator();
-    }
-
-    /**
-     * @param string $className
-     *
-     * @dataProvider getInstantiableClasses
-     */
-    public function testCanInstantiate($className)
-    {
-        $this->assertInstanceOf($className, $this->instantiator->instantiate($className));
-    }
-
-    /**
-     * @param string $className
-     *
-     * @dataProvider getInstantiableClasses
-     */
-    public function testInstantiatesSeparateInstances($className)
-    {
-        $instance1 = $this->instantiator->instantiate($className);
-        $instance2 = $this->instantiator->instantiate($className);
-
-        $this->assertEquals($instance1, $instance2);
-        $this->assertNotSame($instance1, $instance2);
-    }
-
-    public function testExceptionOnUnSerializationException()
-    {
-        if (defined('HHVM_VERSION')) {
-            $this->markTestSkipped(
-                'As of facebook/hhvm#3432, HHVM has no PDORow, and therefore '
-                . ' no internal final classes that cannot be instantiated'
-            );
-        }
-
-        $className = 'DoctrineTest\\InstantiatorTestAsset\\UnserializeExceptionArrayObjectAsset';
-
-        if (\PHP_VERSION_ID >= 50600) {
-            $className = 'PDORow';
-        }
-
-        if (\PHP_VERSION_ID === 50429 || \PHP_VERSION_ID === 50513) {
-            $className = 'DoctrineTest\\InstantiatorTestAsset\\SerializableArrayObjectAsset';
-        }
-
-        $this->setExpectedException('Doctrine\\Instantiator\\Exception\\UnexpectedValueException');
-
-        $this->instantiator->instantiate($className);
-    }
-
-    public function testNoticeOnUnSerializationException()
-    {
-        if (\PHP_VERSION_ID >= 50600) {
-            $this->markTestSkipped(
-                'PHP 5.6 supports `ReflectionClass#newInstanceWithoutConstructor()` for some internal classes'
-            );
-        }
-
-        try {
-            $this->instantiator->instantiate('DoctrineTest\\InstantiatorTestAsset\\WakeUpNoticesAsset');
-
-            $this->fail('No exception was raised');
-        } catch (UnexpectedValueException $exception) {
-            $wakeUpNoticesReflection = new ReflectionClass('DoctrineTest\\InstantiatorTestAsset\\WakeUpNoticesAsset');
-            $previous                = $exception->getPrevious();
-
-            $this->assertInstanceOf('Exception', $previous);
-
-            // in PHP 5.4.29 and PHP 5.5.13, this case is not a notice, but an exception being thrown
-            if (! (\PHP_VERSION_ID === 50429 || \PHP_VERSION_ID === 50513)) {
-                $this->assertSame(
-                    'Could not produce an instance of "DoctrineTest\\InstantiatorTestAsset\WakeUpNoticesAsset" '
-                    . 'via un-serialization, since an error was triggered in file "'
-                    . $wakeUpNoticesReflection->getFileName() . '" at line "36"',
-                    $exception->getMessage()
-                );
-
-                $this->assertSame('Something went bananas while un-serializing this instance', $previous->getMessage());
-                $this->assertSame(\E_USER_NOTICE, $previous->getCode());
-            }
-        }
-    }
-
-    /**
-     * @param string $invalidClassName
-     *
-     * @dataProvider getInvalidClassNames
-     */
-    public function testInstantiationFromNonExistingClass($invalidClassName)
-    {
-        $this->setExpectedException('Doctrine\\Instantiator\\Exception\\InvalidArgumentException');
-
-        $this->instantiator->instantiate($invalidClassName);
-    }
-
-    public function testInstancesAreNotCloned()
-    {
-        $className = 'TemporaryClass' . uniqid();
-
-        eval('namespace ' . __NAMESPACE__ . '; class ' . $className . '{}');
-
-        $instance = $this->instantiator->instantiate(__NAMESPACE__ . '\\' . $className);
-
-        $instance->foo = 'bar';
-
-        $instance2 = $this->instantiator->instantiate(__NAMESPACE__ . '\\' . $className);
-
-        $this->assertObjectNotHasAttribute('foo', $instance2);
-    }
-
-    /**
-     * Provides a list of instantiable classes (existing)
-     *
-     * @return string[][]
-     */
-    public function getInstantiableClasses()
-    {
-        $classes = array(
-            array('stdClass'),
-            array(__CLASS__),
-            array('Doctrine\\Instantiator\\Instantiator'),
-            array('PharException'),
-            array('DoctrineTest\\InstantiatorTestAsset\\SimpleSerializableAsset'),
-            array('DoctrineTest\\InstantiatorTestAsset\\PharExceptionAsset'),
-            array('DoctrineTest\\InstantiatorTestAsset\\UnCloneableAsset'),
-            array('DoctrineTest\\InstantiatorTestAsset\\XMLReaderAsset'),
-        );
-
-        if (\PHP_VERSION_ID === 50429 || \PHP_VERSION_ID === 50513) {
-            return $classes;
-        }
-
-        $classes = array_merge(
-            $classes,
-            array(
-                array('PharException'),
-                array('ArrayObject'),
-                array('DoctrineTest\\InstantiatorTestAsset\\ArrayObjectAsset'),
-                array('DoctrineTest\\InstantiatorTestAsset\\SerializableArrayObjectAsset'),
-            )
-        );
-
-        if (\PHP_VERSION_ID >= 50600) {
-            $classes[] = array('DoctrineTest\\InstantiatorTestAsset\\WakeUpNoticesAsset');
-            $classes[] = array('DoctrineTest\\InstantiatorTestAsset\\UnserializeExceptionArrayObjectAsset');
-        }
-
-        return $classes;
-    }
-
-    /**
-     * Provides a list of instantiable classes (existing)
-     *
-     * @return string[][]
-     */
-    public function getInvalidClassNames()
-    {
-        $classNames = array(
-            array(__CLASS__ . uniqid()),
-            array('Doctrine\\Instantiator\\InstantiatorInterface'),
-            array('DoctrineTest\\InstantiatorTestAsset\\AbstractClassAsset'),
-        );
-
-        if (\PHP_VERSION_ID >= 50400) {
-            $classNames[] = array('DoctrineTest\\InstantiatorTestAsset\\SimpleTraitAsset');
-        }
-
-        return $classNames;
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/AbstractClassAsset.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/AbstractClassAsset.php
deleted file mode 100644
index fbe28dd..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/AbstractClassAsset.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-/**
- * A simple asset for an abstract class
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-abstract class AbstractClassAsset
-{
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/ArrayObjectAsset.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/ArrayObjectAsset.php
deleted file mode 100644
index 56146d7..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/ArrayObjectAsset.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use ArrayObject;
-use BadMethodCallException;
-
-/**
- * Test asset that extends an internal PHP class
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class ArrayObjectAsset extends ArrayObject
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/PharAsset.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/PharAsset.php
deleted file mode 100644
index 553fd56..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/PharAsset.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use BadMethodCallException;
-use Phar;
-
-/**
- * Test asset that extends an internal PHP class
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class PharAsset extends Phar
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/PharExceptionAsset.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/PharExceptionAsset.php
deleted file mode 100644
index 42bf73e..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/PharExceptionAsset.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use BadMethodCallException;
-use PharException;
-
-/**
- * Test asset that extends an internal PHP class
- * This class should be serializable without problems
- * and without getting the "Erroneous data format for unserializing"
- * error
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class PharExceptionAsset extends PharException
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SerializableArrayObjectAsset.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SerializableArrayObjectAsset.php
deleted file mode 100644
index ba19aaf..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SerializableArrayObjectAsset.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use ArrayObject;
-use BadMethodCallException;
-use Serializable;
-
-/**
- * Serializable test asset that also extends an internal class
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class SerializableArrayObjectAsset extends ArrayObject implements Serializable
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function serialize()
-    {
-        return '';
-    }
-
-    /**
-     * {@inheritDoc}
-     *
-     * Should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function unserialize($serialized)
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SimpleSerializableAsset.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SimpleSerializableAsset.php
deleted file mode 100644
index 39f84a6..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SimpleSerializableAsset.php
+++ /dev/null
@@ -1,61 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use BadMethodCallException;
-use Serializable;
-
-/**
- * Base serializable test asset
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class SimpleSerializableAsset implements Serializable
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function serialize()
-    {
-        return '';
-    }
-
-    /**
-     * {@inheritDoc}
-     *
-     * Should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function unserialize($serialized)
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SimpleTraitAsset.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SimpleTraitAsset.php
deleted file mode 100644
index 04e7806..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/SimpleTraitAsset.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-/**
- * A simple trait with no attached logic
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-trait SimpleTraitAsset
-{
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/UnCloneableAsset.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/UnCloneableAsset.php
deleted file mode 100644
index 7d03bda..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/UnCloneableAsset.php
+++ /dev/null
@@ -1,50 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use BadMethodCallException;
-
-/**
- * Base un-cloneable asset
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class UnCloneableAsset
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-
-    /**
-     * Magic `__clone` - should not be invoked
-     *
-     * @throws BadMethodCallException
-     */
-    public function __clone()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/UnserializeExceptionArrayObjectAsset.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/UnserializeExceptionArrayObjectAsset.php
deleted file mode 100644
index b348a40..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/UnserializeExceptionArrayObjectAsset.php
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use ArrayObject;
-use BadMethodCallException;
-
-/**
- * A simple asset for an abstract class
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class UnserializeExceptionArrayObjectAsset extends ArrayObject
-{
-    /**
-     * {@inheritDoc}
-     */
-    public function __wakeup()
-    {
-        throw new BadMethodCallException();
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/WakeUpNoticesAsset.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/WakeUpNoticesAsset.php
deleted file mode 100644
index 18dc671..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/WakeUpNoticesAsset.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use ArrayObject;
-
-/**
- * A simple asset for an abstract class
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class WakeUpNoticesAsset extends ArrayObject
-{
-    /**
-     * Wakeup method called after un-serialization
-     */
-    public function __wakeup()
-    {
-        trigger_error('Something went bananas while un-serializing this instance');
-    }
-}
diff --git a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/XMLReaderAsset.php b/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/XMLReaderAsset.php
deleted file mode 100644
index 39ee699..0000000
--- a/core/vendor/doctrine/instantiator/tests/DoctrineTest/InstantiatorTestAsset/XMLReaderAsset.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace DoctrineTest\InstantiatorTestAsset;
-
-use BadMethodCallException;
-use XMLReader;
-
-/**
- * Test asset that extends an internal PHP class
- *
- * @author Dave Marshall <dave@atst.io>
- */
-class XMLReaderAsset extends XMLReader
-{
-    /**
-     * Constructor - should not be called
-     *
-     * @throws BadMethodCallException
-     */
-    public function __construct()
-    {
-        throw new BadMethodCallException('Not supposed to be called!');
-    }
-}
diff --git a/core/vendor/egulias/email-validator/.gitignore b/core/vendor/egulias/email-validator/.gitignore
new file mode 100644
index 0000000..1630814
--- /dev/null
+++ b/core/vendor/egulias/email-validator/.gitignore
@@ -0,0 +1,2 @@
+report/
+vendor/
diff --git a/core/vendor/egulias/email-validator/README.md b/core/vendor/egulias/email-validator/README.md
index 4bfe310..61ad6cb 100644
--- a/core/vendor/egulias/email-validator/README.md
+++ b/core/vendor/egulias/email-validator/README.md
@@ -1,8 +1,13 @@
-EmailValidator [![Build Status](https://travis-ci.org/egulias/EmailValidator.png?branch=master)](https://travis-ci.org/egulias/EmailValidator) [![Coverage Status](https://coveralls.io/repos/egulias/EmailValidator/badge.png?branch=master)](https://coveralls.io/r/egulias/EmailValidator?branch=master) [![SensioLabsInsight](https://insight.sensiolabs.com/projects/b18d473e-bd5a-4d88-a7b2-7aeaee0ebd7b/small.png)](https://insight.sensiolabs.com/projects/b18d473e-bd5a-4d88-a7b2-7aeaee0ebd7b)[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/egulias/EmailValidator/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/egulias/EmailValidator/?branch=master)
+EmailValidator [![Build Status](https://travis-ci.org/egulias/EmailValidator.png?branch=master)](https://travis-ci.org/egulias/EmailValidator) [![Coverage Status](https://coveralls.io/repos/egulias/EmailValidator/badge.png?branch=master)](https://coveralls.io/r/egulias/EmailValidator?branch=master) [![SensioLabsInsight](https://insight.sensiolabs.com/projects/22ba6692-9c02-42e5-a65d-1c5696bfffc6/small.png)](https://insight.sensiolabs.com/projects/22ba6692-9c02-42e5-a65d-1c5696bfffc6)[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/egulias/EmailValidator/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/egulias/EmailValidator/?branch=master)
 =============================
 
 ##Installation##
-Install via composer. Add to your current compooser.json ```require``` key: ```"egulias/email-validator":"1.0.x-dev" ```
+
+Run the command below to install via Composer
+
+```shell
+composer require egulias/email-validator
+```
 
 ##Usage##
 
@@ -24,7 +29,7 @@ More advanced example (returns detailed diagnostic error codes):
 ```php
 <?php
 
-use egulias\EmailValidator\EmailValidator;
+use Egulias\EmailValidator\EmailValidator;
 
 $validator = new EmailValidator;
 $email = 'dominic@sayers.cc';
@@ -46,6 +51,6 @@ As this is a port from another library and work, here are other people related t
 * Josepf Bielawski [@stloyd](http://github.com/stloyd):      		For its first re-work of Dominic's lib
 * Dominic Sayers [@dominicsayers](http://github.com/dominicsayers):  	The original isemail function
 
-##Licence##
-Released under the MIT Licence attached with this code.
+##License##
+Released under the MIT License attached with this code.
 
diff --git a/core/vendor/egulias/email-validator/composer.json b/core/vendor/egulias/email-validator/composer.json
index a996162..c8fb886 100644
--- a/core/vendor/egulias/email-validator/composer.json
+++ b/core/vendor/egulias/email-validator/composer.json
@@ -10,7 +10,7 @@
   ],
   "extra": {
     "branch-alias": {
-      "dev-master": "1.0.x-dev"
+      "dev-master": "1.3.x-dev"
     }
   },
   "require":      {
diff --git a/core/vendor/egulias/email-validator/composer.lock b/core/vendor/egulias/email-validator/composer.lock
index e7c1abd..3e5a485 100644
--- a/core/vendor/egulias/email-validator/composer.lock
+++ b/core/vendor/egulias/email-validator/composer.lock
@@ -1,9 +1,10 @@
 {
     "_readme": [
         "This file locks the dependencies of your project to a known state",
-        "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file"
+        "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
+        "This file is @generated automatically"
     ],
-    "hash": "cca347a6b95164b1121e034b95f824ec",
+    "hash": "9e9dff0cc08c7292600453e681201e13",
     "packages": [
         {
             "name": "doctrine/lexer",
@@ -61,16 +62,16 @@
     "packages-dev": [
         {
             "name": "guzzle/guzzle",
-            "version": "v3.9.1",
+            "version": "v3.9.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/guzzle/guzzle3.git",
-                "reference": "92d9934f2fca1da15178c91239576ae26e505e60"
+                "reference": "54991459675c1a2924122afbb0e5609ade581155"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/guzzle/guzzle3/zipball/92d9934f2fca1da15178c91239576ae26e505e60",
-                "reference": "92d9934f2fca1da15178c91239576ae26e505e60",
+                "url": "https://api.github.com/repos/guzzle/guzzle3/zipball/54991459675c1a2924122afbb0e5609ade581155",
+                "reference": "54991459675c1a2924122afbb0e5609ade581155",
                 "shasum": ""
             },
             "require": {
@@ -114,7 +115,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "3.8-dev"
+                    "dev-master": "3.9-dev"
                 }
             },
             "autoload": {
@@ -149,7 +150,7 @@
                 "rest",
                 "web service"
             ],
-            "time": "2014-05-07 17:04:22"
+            "time": "2014-08-11 04:32:36"
         },
         {
             "name": "psr/log",
@@ -195,18 +196,18 @@
             "source": {
                 "type": "git",
                 "url": "https://github.com/satooshi/php-coveralls.git",
-                "reference": "b7271847c84d160f5b0aae83e45c225e8ffc96f4"
+                "reference": "94389a0ebdb64857d6899b5e0254dffa99e5aa96"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/satooshi/php-coveralls/zipball/b7271847c84d160f5b0aae83e45c225e8ffc96f4",
-                "reference": "b7271847c84d160f5b0aae83e45c225e8ffc96f4",
+                "url": "https://api.github.com/repos/satooshi/php-coveralls/zipball/94389a0ebdb64857d6899b5e0254dffa99e5aa96",
+                "reference": "94389a0ebdb64857d6899b5e0254dffa99e5aa96",
                 "shasum": ""
             },
             "require": {
                 "ext-json": "*",
                 "ext-simplexml": "*",
-                "guzzle/guzzle": ">=3.0",
+                "guzzle/guzzle": ">=2.7",
                 "php": ">=5.3",
                 "psr/log": "1.0.0",
                 "symfony/config": ">=2.0",
@@ -216,7 +217,7 @@
             },
             "require-dev": {
                 "apigen/apigen": "2.8.*@stable",
-                "pdepend/pdepend": "dev-master",
+                "pdepend/pdepend": "dev-master as 2.0.0",
                 "phpmd/phpmd": "dev-master",
                 "phpunit/php-invoker": ">=1.1.0,<1.2.0",
                 "phpunit/phpunit": "3.7.*@stable",
@@ -262,21 +263,21 @@
                 "github",
                 "test"
             ],
-            "time": "2014-05-14 13:09:37"
+            "time": "2014-07-09 10:45:38"
         },
         {
             "name": "symfony/config",
-            "version": "v2.4.5",
+            "version": "v2.5.4",
             "target-dir": "Symfony/Component/Config",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Config.git",
-                "reference": "2effc67af6f21a0d267210b72d0b0b691d113528"
+                "reference": "080eabdc256c1d7a3a7cf6296271edb68eb1ab2b"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Config/zipball/2effc67af6f21a0d267210b72d0b0b691d113528",
-                "reference": "2effc67af6f21a0d267210b72d0b0b691d113528",
+                "url": "https://api.github.com/repos/symfony/Config/zipball/080eabdc256c1d7a3a7cf6296271edb68eb1ab2b",
+                "reference": "080eabdc256c1d7a3a7cf6296271edb68eb1ab2b",
                 "shasum": ""
             },
             "require": {
@@ -286,7 +287,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "2.4-dev"
+                    "dev-master": "2.5-dev"
                 }
             },
             "autoload": {
@@ -300,48 +301,48 @@
             ],
             "authors": [
                 {
-                    "name": "Fabien Potencier",
-                    "email": "fabien@symfony.com",
-                    "homepage": "http://fabien.potencier.org",
-                    "role": "Lead Developer"
-                },
-                {
                     "name": "Symfony Community",
                     "homepage": "http://symfony.com/contributors"
+                },
+                {
+                    "name": "Fabien Potencier",
+                    "email": "fabien@symfony.com"
                 }
             ],
             "description": "Symfony Config Component",
             "homepage": "http://symfony.com",
-            "time": "2014-04-22 08:11:06"
+            "time": "2014-08-31 03:22:04"
         },
         {
             "name": "symfony/console",
-            "version": "v2.4.5",
+            "version": "v2.5.4",
             "target-dir": "Symfony/Component/Console",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Console.git",
-                "reference": "24f723436e62598c9dddee2a8573d6992504dc5d"
+                "reference": "748beed2a1e73179c3f5154d33fe6ae100c1aeb1"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Console/zipball/24f723436e62598c9dddee2a8573d6992504dc5d",
-                "reference": "24f723436e62598c9dddee2a8573d6992504dc5d",
+                "url": "https://api.github.com/repos/symfony/Console/zipball/748beed2a1e73179c3f5154d33fe6ae100c1aeb1",
+                "reference": "748beed2a1e73179c3f5154d33fe6ae100c1aeb1",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.3"
             },
             "require-dev": {
+                "psr/log": "~1.0",
                 "symfony/event-dispatcher": "~2.1"
             },
             "suggest": {
+                "psr/log": "For using the console logger",
                 "symfony/event-dispatcher": ""
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "2.4-dev"
+                    "dev-master": "2.5-dev"
                 }
             },
             "autoload": {
@@ -355,40 +356,41 @@
             ],
             "authors": [
                 {
-                    "name": "Fabien Potencier",
-                    "email": "fabien@symfony.com",
-                    "homepage": "http://fabien.potencier.org",
-                    "role": "Lead Developer"
-                },
-                {
                     "name": "Symfony Community",
                     "homepage": "http://symfony.com/contributors"
+                },
+                {
+                    "name": "Fabien Potencier",
+                    "email": "fabien@symfony.com"
                 }
             ],
             "description": "Symfony Console Component",
             "homepage": "http://symfony.com",
-            "time": "2014-05-14 21:48:29"
+            "time": "2014-08-14 16:10:54"
         },
         {
             "name": "symfony/event-dispatcher",
-            "version": "v2.4.5",
+            "version": "v2.5.4",
             "target-dir": "Symfony/Component/EventDispatcher",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/EventDispatcher.git",
-                "reference": "e539602e5455aa086c0e81e604745af7789e4d8a"
+                "reference": "8faf5cc7e80fde74a650a36e60d32ce3c3e0457b"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/e539602e5455aa086c0e81e604745af7789e4d8a",
-                "reference": "e539602e5455aa086c0e81e604745af7789e4d8a",
+                "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/8faf5cc7e80fde74a650a36e60d32ce3c3e0457b",
+                "reference": "8faf5cc7e80fde74a650a36e60d32ce3c3e0457b",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.3"
             },
             "require-dev": {
-                "symfony/dependency-injection": "~2.0"
+                "psr/log": "~1.0",
+                "symfony/config": "~2.0",
+                "symfony/dependency-injection": "~2.0",
+                "symfony/stopwatch": "~2.2"
             },
             "suggest": {
                 "symfony/dependency-injection": "",
@@ -397,7 +399,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "2.4-dev"
+                    "dev-master": "2.5-dev"
                 }
             },
             "autoload": {
@@ -411,33 +413,31 @@
             ],
             "authors": [
                 {
-                    "name": "Fabien Potencier",
-                    "email": "fabien@symfony.com",
-                    "homepage": "http://fabien.potencier.org",
-                    "role": "Lead Developer"
-                },
-                {
                     "name": "Symfony Community",
                     "homepage": "http://symfony.com/contributors"
+                },
+                {
+                    "name": "Fabien Potencier",
+                    "email": "fabien@symfony.com"
                 }
             ],
             "description": "Symfony EventDispatcher Component",
             "homepage": "http://symfony.com",
-            "time": "2014-04-16 10:34:31"
+            "time": "2014-07-28 13:20:46"
         },
         {
             "name": "symfony/filesystem",
-            "version": "v2.4.5",
+            "version": "v2.5.4",
             "target-dir": "Symfony/Component/Filesystem",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Filesystem.git",
-                "reference": "a3af8294bcce4a7c1b2892363b0c9d8109affad4"
+                "reference": "a765efd199e02ff4001c115c318e219030be9364"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Filesystem/zipball/a3af8294bcce4a7c1b2892363b0c9d8109affad4",
-                "reference": "a3af8294bcce4a7c1b2892363b0c9d8109affad4",
+                "url": "https://api.github.com/repos/symfony/Filesystem/zipball/a765efd199e02ff4001c115c318e219030be9364",
+                "reference": "a765efd199e02ff4001c115c318e219030be9364",
                 "shasum": ""
             },
             "require": {
@@ -446,7 +446,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "2.4-dev"
+                    "dev-master": "2.5-dev"
                 }
             },
             "autoload": {
@@ -460,33 +460,31 @@
             ],
             "authors": [
                 {
-                    "name": "Fabien Potencier",
-                    "email": "fabien@symfony.com",
-                    "homepage": "http://fabien.potencier.org",
-                    "role": "Lead Developer"
-                },
-                {
                     "name": "Symfony Community",
                     "homepage": "http://symfony.com/contributors"
+                },
+                {
+                    "name": "Fabien Potencier",
+                    "email": "fabien@symfony.com"
                 }
             ],
             "description": "Symfony Filesystem Component",
             "homepage": "http://symfony.com",
-            "time": "2014-04-16 10:34:31"
+            "time": "2014-09-03 09:00:14"
         },
         {
             "name": "symfony/stopwatch",
-            "version": "v2.4.5",
+            "version": "v2.5.4",
             "target-dir": "Symfony/Component/Stopwatch",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Stopwatch.git",
-                "reference": "343bcc0360f2c22f371884b8f6a9fee8d1aa431a"
+                "reference": "22ab4f76cdeefd38b00022a6be5709190a2fd046"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Stopwatch/zipball/343bcc0360f2c22f371884b8f6a9fee8d1aa431a",
-                "reference": "343bcc0360f2c22f371884b8f6a9fee8d1aa431a",
+                "url": "https://api.github.com/repos/symfony/Stopwatch/zipball/22ab4f76cdeefd38b00022a6be5709190a2fd046",
+                "reference": "22ab4f76cdeefd38b00022a6be5709190a2fd046",
                 "shasum": ""
             },
             "require": {
@@ -495,7 +493,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "2.4-dev"
+                    "dev-master": "2.5-dev"
                 }
             },
             "autoload": {
@@ -509,33 +507,31 @@
             ],
             "authors": [
                 {
-                    "name": "Fabien Potencier",
-                    "email": "fabien@symfony.com",
-                    "homepage": "http://fabien.potencier.org",
-                    "role": "Lead Developer"
-                },
-                {
                     "name": "Symfony Community",
                     "homepage": "http://symfony.com/contributors"
+                },
+                {
+                    "name": "Fabien Potencier",
+                    "email": "fabien@symfony.com"
                 }
             ],
             "description": "Symfony Stopwatch Component",
             "homepage": "http://symfony.com",
-            "time": "2014-04-18 20:37:09"
+            "time": "2014-08-14 16:10:54"
         },
         {
             "name": "symfony/yaml",
-            "version": "v2.4.5",
+            "version": "v2.5.4",
             "target-dir": "Symfony/Component/Yaml",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Yaml.git",
-                "reference": "fd22bb88c3a6f73c898b39bec185a9e211b06265"
+                "reference": "01a7695bcfb013d0a15c6757e15aae120342986f"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Yaml/zipball/fd22bb88c3a6f73c898b39bec185a9e211b06265",
-                "reference": "fd22bb88c3a6f73c898b39bec185a9e211b06265",
+                "url": "https://api.github.com/repos/symfony/Yaml/zipball/01a7695bcfb013d0a15c6757e15aae120342986f",
+                "reference": "01a7695bcfb013d0a15c6757e15aae120342986f",
                 "shasum": ""
             },
             "require": {
@@ -544,7 +540,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "2.4-dev"
+                    "dev-master": "2.5-dev"
                 }
             },
             "autoload": {
@@ -558,19 +554,17 @@
             ],
             "authors": [
                 {
-                    "name": "Fabien Potencier",
-                    "email": "fabien@symfony.com",
-                    "homepage": "http://fabien.potencier.org",
-                    "role": "Lead Developer"
-                },
-                {
                     "name": "Symfony Community",
                     "homepage": "http://symfony.com/contributors"
+                },
+                {
+                    "name": "Fabien Potencier",
+                    "email": "fabien@symfony.com"
                 }
             ],
             "description": "Symfony Yaml Component",
             "homepage": "http://symfony.com",
-            "time": "2014-05-12 09:27:48"
+            "time": "2014-08-31 03:22:04"
         }
     ],
     "aliases": [
@@ -580,6 +574,7 @@
     "stability-flags": {
         "satooshi/php-coveralls": 20
     },
+    "prefer-stable": false,
     "platform": {
         "php": ">= 5.3.3"
     },
diff --git a/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/EmailLexer.php b/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/EmailLexer.php
index 721190f..7056235 100644
--- a/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/EmailLexer.php
+++ b/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/EmailLexer.php
@@ -31,10 +31,13 @@ class EmailLexer extends AbstractLexer
     const S_SEMICOLON        = 275;
     const S_OPENQBRACKET     = 276;
     const S_CLOSEQBRACKET    = 277;
+    const S_SLASH            = 278;
     const S_EMPTY            = null;
     const GENERIC            = 300;
     const CRLF               = 301;
     const INVALID            = 302;
+    const ASCII_INVALID_FROM = 127;
+    const ASCII_INVALID_TO   = 199;
 
     /**
      * US-ASCII visible characters not valid for atext (@link http://tools.ietf.org/html/rfc5322#section-3.2.3)
@@ -52,6 +55,7 @@ class EmailLexer extends AbstractLexer
         ';'    => self::S_SEMICOLON,
         '@'    => self::S_AT,
         '\\'   => self::S_BACKSLASH,
+        '/'    => self::S_SLASH,
         ','    => self::S_COMMA,
         '.'    => self::S_DOT,
         '"'    => self::S_DQUOTE,
@@ -67,14 +71,31 @@ class EmailLexer extends AbstractLexer
         '>'    => self::S_GREATERTHAN,
         '{'    => self::S_OPENQBRACKET,
         '}'    => self::S_CLOSEQBRACKET,
-        ''     => self::S_EMPTY
+        ''     => self::S_EMPTY,
+        '\0'   => self::C_NUL,
     );
 
+    protected $invalidASCII = array(226 => 1,);
+
+    protected $hasInvalidTokens = false;
+
     protected $previous;
 
+    public function reset()
+    {
+        $this->hasInvalidTokens = false;
+        parent::reset();
+    }
+
+    public function hasInvalidTokens()
+    {
+        return $this->hasInvalidTokens;
+    }
+
     /**
      * @param $type
      * @throws \UnexpectedValueException
+     * @return boolean
      */
     public function find($type)
     {
@@ -100,7 +121,7 @@ public function getPrevious()
     /**
      * moveNext
      *
-     * @return mixed
+     * @return boolean
      */
     public function moveNext()
     {
@@ -112,7 +133,7 @@ public function moveNext()
     /**
      * Lexical catchable patterns.
      *
-     * @return array
+     * @return string[]
      */
     protected function getCatchablePatterns()
     {
@@ -130,7 +151,7 @@ protected function getCatchablePatterns()
     /**
      * Lexical non-catchable patterns.
      *
-     * @return array
+     * @return string[]
      */
     protected function getNonCatchablePatterns()
     {
@@ -146,14 +167,48 @@ protected function getNonCatchablePatterns()
      */
     protected function getType(&$value)
     {
+
+        if ($this->isNullType($value)) {
+            return self::C_NUL;
+        }
+
         if (isset($this->charValue[$value])) {
             return $this->charValue[$value];
         }
 
-        if (preg_match('/[\x10-\x1F]+/', $value)) {
+        if ($this->isInvalid($value)) {
+            $this->hasInvalidTokens = true;
             return self::INVALID;
         }
 
         return  self::GENERIC;
     }
+
+    /**
+     * @param string $value
+     */
+    protected function isNullType($value)
+    {
+        if ($value === "\0") {
+            return true;
+        }
+
+        return false;
+    }
+
+    /**
+     * @param string $value
+     */
+    protected function isInvalid($value)
+    {
+        if (preg_match('/[\x10-\x1F]+/', $value)) {
+            return true;
+        }
+
+        if (isset($this->invalidASCII[ord($value)])) {
+            return true;
+        }
+
+        return false;
+    }
 }
diff --git a/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/EmailParser.php b/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/EmailParser.php
index cfb9ce9..0c5d156 100644
--- a/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/EmailParser.php
+++ b/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/EmailParser.php
@@ -28,6 +28,9 @@ public function __construct(EmailLexer $lexer)
         $this->domainPartParser = new DomainPart($this->lexer);
     }
 
+    /**
+     * @param string $str
+     */
     public function parse($str)
     {
         $this->lexer->setInput($str);
@@ -36,6 +39,10 @@ public function parse($str)
             throw new \InvalidArgumentException('ERR_NOLOCALPART');
         }
 
+        if ($this->lexer->hasInvalidTokens()) {
+            throw new \InvalidArgumentException('ERR_INVALID_ATEXT');
+        }
+
         $this->localPartParser->parse($str);
         $this->domainPartParser->parse($str);
 
@@ -78,6 +85,10 @@ protected function hasAtToken()
         return true;
     }
 
+    /**
+     * @param string $localPart
+     * @param string $parsedDomainPart
+     */
     protected function addLongEmailWarning($localPart, $parsedDomainPart)
     {
         if (strlen($localPart . '@' . $parsedDomainPart) > self::EMAIL_MAX_LENGTH) {
diff --git a/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/EmailValidator.php b/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/EmailValidator.php
index 34da636..d047dec 100644
--- a/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/EmailValidator.php
+++ b/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/EmailValidator.php
@@ -2,8 +2,6 @@
 
 namespace Egulias\EmailValidator;
 
-use Egulias\EmailValidator\Parser\LocalPart;
-
 /**
  * EmailValidator
  *
@@ -97,7 +95,7 @@ public function isValid($email, $checkDNS = false, $strict = false)
             return false;
         }
 
-        return ($strict) ? (!$this->hasWarnings() && $dns) : true;
+        return !$strict || (!$this->hasWarnings() && $dns);
     }
 
     /**
@@ -146,16 +144,9 @@ public function getThreshold()
 
     protected function checkDNS()
     {
-        $checked = false;
-        if (!function_exists('dns_get_record') && (
-            in_array(self::DNSWARN_NO_RECORD, $this->warnings) &&
-            in_array(self::DNSWARN_NO_MX_RECORD, $this->warnings)
-        )) {
-            return $checked;
-        }
+        $checked = true;
 
         $result = checkdnsrr(trim($this->parser->getParsedDomainPart()), 'MX');
-        $checked = true;
 
         if (!$result) {
             $this->warnings[] = self::DNSWARN_NO_RECORD;
diff --git a/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/Parser/DomainPart.php b/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/Parser/DomainPart.php
index d622b94..33875a4 100644
--- a/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/Parser/DomainPart.php
+++ b/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/Parser/DomainPart.php
@@ -23,6 +23,9 @@ public function parse($domainPart)
         if ($this->lexer->token['type'] === EmailLexer::S_EMPTY) {
             throw new \InvalidArgumentException('ERR_NODOMAIN');
         }
+        if ($this->lexer->token['type'] === EmailLexer::S_HYPHEN) {
+            throw new \InvalidArgumentException('ERR_DOMAINHYPHENEND');
+        }
 
         if ($this->lexer->token['type'] === EmailLexer::S_OPENPARENTHESIS) {
             $this->warnings[] = EmailValidator::DEPREC_COMMENT;
@@ -103,6 +106,10 @@ protected function doParseDomainPart()
         do {
             $prev = $this->lexer->getPrevious();
 
+            if ($this->lexer->token['type'] === EmailLexer::S_SLASH) {
+                throw new \InvalidArgumentException('ERR_DOMAIN_CHAR_NOT_ALLOWED');
+            }
+
             if ($this->lexer->token['type'] === EmailLexer::S_OPENPARENTHESIS) {
                 $this->parseComments();
                 $this->lexer->moveNext();
@@ -210,6 +217,9 @@ protected function doParseDomainLiteral()
         return $addressLiteral;
     }
 
+    /**
+     * @param string $addressLiteral
+     */
     protected function checkIPV4Tag($addressLiteral)
     {
         $matchesIP  = array();
@@ -295,5 +305,4 @@ protected function parseDomainComments()
             throw new \InvalidArgumentException('ERR_EXPECTING_ATEXT');
         }
     }
-
-}
\ No newline at end of file
+}
diff --git a/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/Parser/LocalPart.php b/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/Parser/LocalPart.php
index 47c7cc6..4db0ea6 100644
--- a/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/Parser/LocalPart.php
+++ b/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/Parser/LocalPart.php
@@ -4,6 +4,7 @@
 
 use Egulias\EmailValidator\EmailLexer;
 use Egulias\EmailValidator\EmailValidator;
+use \InvalidArgumentException;
 
 
 class LocalPart extends Parser
@@ -21,8 +22,7 @@ public function parse($localPart)
 
             $closingQuote = $this->checkDQUOTE($closingQuote);
             if ($closingQuote && $parseDQuote) {
-                $this->parseDoubleQuote();
-                $parseDQuote = false;
+                $parseDQuote = $this->parseDoubleQuote();
             }
 
             if ($this->lexer->token['type'] === EmailLexer::S_OPENPARENTHESIS) {
@@ -56,23 +56,51 @@ public function parse($localPart)
 
     protected function parseDoubleQuote()
     {
-        $special = array (
+        $parseAgain = true;
+        $special = array(
             EmailLexer::S_CR => true,
             EmailLexer::S_HTAB => true,
             EmailLexer::S_LF => true
         );
+
+        $invalid = array(
+            EmailLexer::C_NUL => true,
+            EmailLexer::S_HTAB => true,
+            EmailLexer::S_CR => true,
+            EmailLexer::S_LF => true
+        );
         $setSpecialsWarning = true;
 
         $this->lexer->moveNext();
+
         while ($this->lexer->token['type'] !== EmailLexer::S_DQUOTE && $this->lexer->token) {
+            $parseAgain = false;
             if (isset($special[$this->lexer->token['type']]) && $setSpecialsWarning) {
                 $this->warnings[] = EmailValidator::CFWS_FWS;
                 $setSpecialsWarning = false;
             }
+
             $this->lexer->moveNext();
+
+            if (!$this->escaped() && isset($invalid[$this->lexer->token['type']])) {
+                throw new InvalidArgumentException("ERR_EXPECTED_ATEXT");
+            }
         }
-    }
 
+        $prev = $this->lexer->getPrevious();
+
+        if ($prev['type'] === EmailLexer::S_BACKSLASH) {
+            if (!$this->checkDQUOTE(false)) {
+                throw new \InvalidArgumentException("ERR_UNCLOSED_DQUOTE");
+            }
+        }
+
+        if (!$this->lexer->isNextToken(EmailLexer::S_AT) && $prev['type'] !== EmailLexer::S_BACKSLASH) {
+            throw new \InvalidArgumentException("ERR_EXPECED_AT");
+        }
+
+        return $parseAgain;
+    }
 
     protected function isInvalidToken($token, $closingQuote)
     {
diff --git a/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/Parser/Parser.php b/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/Parser/Parser.php
index b62b405..b66279e 100644
--- a/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/Parser/Parser.php
+++ b/core/vendor/egulias/email-validator/src/Egulias/EmailValidator/Parser/Parser.php
@@ -124,8 +124,7 @@ protected function escaped()
 
         if ($previous['type'] === EmailLexer::S_BACKSLASH
             &&
-            ($this->lexer->token['type'] === EmailLexer::S_SP ||
-            $this->lexer->token['type'] === EmailLexer::S_HTAB)
+            $this->lexer->token['type'] !== EmailLexer::GENERIC
         ) {
             return true;
         }
@@ -164,6 +163,7 @@ protected function checkDQUOTE($hasClosingQuote)
         if ($this->lexer->isNextToken(EmailLexer::GENERIC) && $previous['type'] === EmailLexer::GENERIC) {
             throw new \InvalidArgumentException('ERR_EXPECTING_ATEXT');
         }
+
         $this->warnings[] = EmailValidator::RFC5321_QUOTEDSTRING;
         try {
             $this->lexer->find(EmailLexer::S_DQUOTE);
@@ -187,4 +187,4 @@ protected function checkCRLFInFWS()
             throw new \InvalidArgumentException("ERR_FWS_CRLF_END");
         }
     }
-}
\ No newline at end of file
+}
diff --git a/core/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailLexerTest.php b/core/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailLexerTest.php
index 5ee3f3e..4af771c 100644
--- a/core/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailLexerTest.php
+++ b/core/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailLexerTest.php
@@ -44,6 +44,15 @@ public function testLexerSearchToken()
         $this->assertTrue($lexer->find(EmailLexer::S_HTAB));
     }
 
+    public function testLexerHasInvalidTokens()
+    {
+        $lexer = new EmailLexer();
+        $lexer->setInput(chr(226));
+        $lexer->moveNext();
+        $lexer->moveNext();
+        $this->assertTrue($lexer->hasInvalidTokens());
+    }
+
     public function getTokens()
     {
         return array(
@@ -61,6 +70,7 @@ public function getTokens()
             array("\"", EmailLexer::S_DQUOTE),
             array("-", EmailLexer::S_HYPHEN),
             array("\\", EmailLexer::S_BACKSLASH),
+            array("/", EmailLexer::S_SLASH),
             array("(", EmailLexer::S_OPENPARENTHESIS),
             array(")", EmailLexer::S_CLOSEPARENTHESIS),
             array('<', EmailLexer::S_LOWERTHAN),
@@ -74,7 +84,9 @@ public function getTokens()
             array('{', EmailLexer::S_OPENQBRACKET),
             array('}', EmailLexer::S_CLOSEQBRACKET),
             array('',  EmailLexer::S_EMPTY),
-            array(chr(31),  EmailLexer::INVALID)
+            array(chr(31),  EmailLexer::INVALID),
+            array(chr(226),  EmailLexer::INVALID),
+            array(chr(0),  EmailLexer::C_NUL)
         );
     }
 }
diff --git a/core/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailValidatorTest.php b/core/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailValidatorTest.php
index 81fcf4d..e72fde4 100644
--- a/core/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailValidatorTest.php
+++ b/core/vendor/egulias/email-validator/tests/egulias/Tests/EmailValidator/EmailValidatorTest.php
@@ -43,6 +43,10 @@ public function getValidEmails()
             array('"user,name"@example.com'),
             array('"user name"@example.com'),
             array('"user@name"@example.com'),
+            array('"\a"@iana.org'),
+            array('"test\ test"@iana.org'),
+            array('""@iana.org'),
+            array('"\""@iana.org'),
         );
     }
 
@@ -57,9 +61,10 @@ public function testInvalidEmails($email)
     public function getInvalidEmails()
     {
         return array(
+
             array('example.@example.co.uk'),
             array('example@example@example.co.uk'),
-            array('(fabien_potencier@example.fr)'),
+            array('(test_exampel@example.fr)'),
             array('example(example)example@example.co.uk'),
             array('.example@localhost'),
             array('ex\ample@localhost'),
@@ -72,6 +77,27 @@ public function getInvalidEmails()
             array('username@example,com'),
             array('usern,ame@example.com'),
             array('user[na]me@example.com'),
+            array('"""@iana.org'),
+            array('"\"@iana.org'),
+            array('"test"test@iana.org'),
+            array('"test""test"@iana.org'),
+            array('"test"."test"@iana.org'),
+            array('"test".test@iana.org'),
+            array('"test"' . chr(0) . '@iana.org'),
+            array('"test\"@iana.org'),
+            array(chr(226) . '@iana.org'),
+            array('test@' . chr(226) . '.org'),
+            array('\r\ntest@iana.org'),
+            array('\r\n test@iana.org'),
+            array('\r\n \r\ntest@iana.org'),
+            array('\r\n \r\ntest@iana.org'),
+            array('\r\n \r\n test@iana.org'),
+            array('test@iana.org \r\n'),
+            array('test@iana.org \r\n '),
+            array('test@iana.org \r\n \r\n'),
+            array('test@iana.org \r\n\r\n'),
+            array('test@iana.org  \r\n\r\n '),
+            array('test@iana/icann.org'),
         );
     }
 
@@ -124,6 +150,16 @@ public function testValidEmailsWithWarningsCheck($warnings, $email)
         $this->assertEquals($warnings, $this->validator->getWarnings());
     }
 
+    /**
+     * @dataProvider getInvalidEmailsWithWarnings
+     */
+    public function testInvalidEmailsWithDnsCheckAndStrictMode($warnings, $email)
+    {
+        $this->assertFalse($this->validator->isValid($email, true, true));
+
+        $this->assertEquals($warnings, $this->validator->getWarnings());
+    }
+
     public function getInvalidEmailsWithWarnings()
     {
         return array(
@@ -275,6 +311,17 @@ public function getInvalidEmailsWithWarnings()
                 'parttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocalparttoolonglocalpart'.
                 'toolonglocalparttoolonglocalparttoolonglocalparttoolonglocalpar'
             ),
+            array(
+                array(
+                    EmailValidator::DNSWARN_NO_RECORD,
+                ),
+                'test@test'
+            ),
         );
     }
+
+    public function testInvalidEmailsWithStrict()
+    {
+        $this->assertFalse($this->validator->isValid('"test"@test', false, true));
+    }
 }
diff --git a/core/vendor/guzzlehttp/ringphp/CHANGELOG.md b/core/vendor/guzzlehttp/ringphp/CHANGELOG.md
new file mode 100644
index 0000000..ee3ce79
--- /dev/null
+++ b/core/vendor/guzzlehttp/ringphp/CHANGELOG.md
@@ -0,0 +1,22 @@
+# CHANGELOG
+
+## 1.0.3 - 2014-11-03
+
+* Setting the `header` stream option as a string to be compatible with GAE.
+* Header parsing now ensures that header order is maintained in the parsed
+  message.
+
+## 1.0.2 - 2014-10-28
+
+* Now correctly honoring a `version` option is supplied in a request.
+  See https://github.com/guzzle/RingPHP/pull/8
+
+## 1.0.1 - 2014-10-26
+
+* Fixed a header parsing issue with the `CurlHandler` and `CurlMultiHandler`
+  that caused cURL requests with multiple responses to merge repsonses together
+  (e.g., requests with digest authentication).
+
+## 1.0.0 - 2014-10-12
+
+* Initial release.
diff --git a/core/vendor/guzzlehttp/ringphp/README.rst b/core/vendor/guzzlehttp/ringphp/README.rst
index 1f7a0bc..10374e8 100644
--- a/core/vendor/guzzlehttp/ringphp/README.rst
+++ b/core/vendor/guzzlehttp/ringphp/README.rst
@@ -2,13 +2,45 @@
 RingPHP
 =======
 
-Provides low level APIs used to power HTTP clients and servers through a
-simple, PHP ``callable`` that accepts a request hash and returns a future
-response hash. RingPHP supports both synchronous and asynchronous
-workflows by utilizing both futures and `promises <https://github.com/reactphp/promise>`_.
+Provides a simple API and specification that abstracts away the details of HTTP
+into a single PHP function. RingPHP be used to power HTTP clients and servers
+through a PHP function that accepts a request hash and returns a response hash
+that is fulfilled using a `promise <https://github.com/reactphp/promise>`_,
+allowing RingPHP to support both synchronous and asynchronous workflows.
+
+By abstracting the implementation details of different HTTP clients and
+servers, RingPHP allows you to utilize pluggable HTTP clients and servers
+without tying your application to a specific implementation.
+
+.. code-block:: php
+
+    <?php
+    require 'vendor/autoload.php';
+
+    use GuzzleHttp\Ring\Client\CurlHandler;
+
+    $handler = new CurlHandler();
+    $response = $handler([
+        'http_method' => 'GET',
+        'uri'         => '/',
+        'headers'     => [
+            'host'  => ['www.google.com'],
+            'x-foo' => ['baz']
+        ]
+    ]);
+
+    $response->then(function (array $response) {
+        echo $response['status'];
+    });
+
+    $response->wait();
 
 RingPHP is inspired by Clojure's `Ring <https://github.com/ring-clojure/ring>`_,
-but has been modified to accommodate clients and servers for both blocking
-and non-blocking requests.
+which, in turn, was inspired by Python's WSGI and Ruby's Rack. RingPHP is
+utilized as the handler layer in `Guzzle <http://guzzlephp.org>`_ 5.0+ to send
+HTTP requests.
+
+Documentation
+-------------
 
-See http://guzzle-ring.readthedocs.org/ for the full online documentation.
+See http://ringphp.readthedocs.org/ for the full online documentation.
diff --git a/core/vendor/guzzlehttp/ringphp/docs/index.rst b/core/vendor/guzzlehttp/ringphp/docs/index.rst
index 892a50e..3ac5447 100644
--- a/core/vendor/guzzlehttp/ringphp/docs/index.rst
+++ b/core/vendor/guzzlehttp/ringphp/docs/index.rst
@@ -2,23 +2,49 @@
 RingPHP
 =======
 
-Provides low level APIs used to power HTTP clients and servers through a
-simple, PHP ``callable`` that accepts a request hash and returns a future
-response hash. RingPHP supports both synchronous and asynchronous
-workflows by utilizing both futures and `promises <https://github.com/reactphp/promise>`_.
+Provides a simple API and specification that abstracts away the details of HTTP
+into a single PHP function. RingPHP be used to power HTTP clients and servers
+through a PHP function that accepts a request hash and returns a response hash
+that is fulfilled using a `promise <https://github.com/reactphp/promise>`_,
+allowing RingPHP to support both synchronous and asynchronous workflows.
 
-RingPHP is inspired by Clojure's `Ring <https://github.com/ring-clojure/ring>`_,
-but has been modified to accommodate clients and servers for both blocking
-and non-blocking requests.
-
-RingPHP is utilized as the handler layer in
-`Guzzle <http://guzzlephp.org>`_ 5.0+ to send HTTP requests.
+By abstracting the implementation details of different HTTP clients and
+servers, RingPHP allows you to utilize pluggable HTTP clients and servers
+without tying your application to a specific implementation.
 
 .. toctree::
-   :maxdepth: 1
+   :maxdepth: 2
+
+    spec
+    futures
+    client_middleware
+    client_handlers
+    testing
+
+.. code-block:: php
+
+    <?php
+    require 'vendor/autoload.php';
 
-   spec
-   futures
-   client_middleware
-   client_handlers
-   testing
+    use GuzzleHttp\Ring\Client\CurlHandler;
+
+    $handler = new CurlHandler();
+    $response = $handler([
+        'http_method' => 'GET',
+        'uri'         => '/',
+        'headers'     => [
+            'host'  => ['www.google.com'],
+            'x-foo' => ['baz']
+        ]
+    ]);
+
+    $response->then(function (array $response) {
+        echo $response['status'];
+    });
+
+    $response->wait();
+
+RingPHP is inspired by Clojure's `Ring <https://github.com/ring-clojure/ring>`_,
+which, in turn, was inspired by Python's WSGI and Ruby's Rack. RingPHP is
+utilized as the handler layer in `Guzzle <http://guzzlephp.org>`_ 5.0+ to send
+HTTP requests.
diff --git a/core/vendor/guzzlehttp/ringphp/docs/spec.rst b/core/vendor/guzzlehttp/ringphp/docs/spec.rst
index a8cdffa..bc91078 100644
--- a/core/vendor/guzzlehttp/ringphp/docs/spec.rst
+++ b/core/vendor/guzzlehttp/ringphp/docs/spec.rst
@@ -8,7 +8,7 @@ middleware.
 Handlers
 --------
 
-Handlers are implemented as a PHP ``callable`` that accept a request array and
+Handlers are implemented as a PHP ``callable`` that accept a request array 
 and return a response array (``GuzzleHttp\Ring\Future\FutureArrayInterface``).
 
 For example:
diff --git a/core/vendor/guzzlehttp/ringphp/src/Client/CurlFactory.php b/core/vendor/guzzlehttp/ringphp/src/Client/CurlFactory.php
index 22d9f5c..f535a3d 100644
--- a/core/vendor/guzzlehttp/ringphp/src/Client/CurlFactory.php
+++ b/core/vendor/guzzlehttp/ringphp/src/Client/CurlFactory.php
@@ -76,20 +76,17 @@ public static function createResponse(
             $response['effective_url'] = $response['transfer_stats']['url'];
         }
 
-        if (isset($headers[0])) {
+        if (!empty($headers)) {
             $startLine = explode(' ', array_shift($headers), 3);
-            // Trim out 100-Continue start-lines
-            if ($startLine[1] == '100') {
-                $startLine = explode(' ', array_shift($headers), 3);
-            }
-            $response['headers'] = Core::headersFromLines($headers);
+            $headerList = Core::headersFromLines($headers);
+            $response['headers'] = $headerList;
             $response['status'] = isset($startLine[1]) ? (int) $startLine[1] : null;
             $response['reason'] = isset($startLine[2]) ? $startLine[2] : null;
             $response['body'] = $body;
             Core::rewindBody($response);
         }
 
-        return !empty($response['curl']['errno']) || !isset($startLine[1])
+        return !empty($response['curl']['errno']) || !isset($response['status'])
             ? self::createErrorResponse($handler, $request, $response)
             : $response;
     }
@@ -159,6 +156,7 @@ private function getOutputBody(array $request, array &$options)
     private function getDefaultOptions(array $request, array &$headers)
     {
         $url = Core::url($request);
+        $startingResponse = false;
 
         $options = [
             '_headers'             => $request['headers'],
@@ -167,15 +165,24 @@ private function getDefaultOptions(array $request, array &$headers)
             CURLOPT_RETURNTRANSFER => false,
             CURLOPT_HEADER         => false,
             CURLOPT_CONNECTTIMEOUT => 150,
-            CURLOPT_HEADERFUNCTION => function ($ch, $h) use (&$headers) {
-                $length = strlen($h);
-                if ($value = trim($h)) {
-                    $headers[] = trim($h);
+            CURLOPT_HEADERFUNCTION => function ($ch, $h) use (&$headers, &$startingResponse) {
+                $value = trim($h);
+                if ($value === '') {
+                    $startingResponse = true;
+                } elseif ($startingResponse) {
+                    $startingResponse = false;
+                    $headers = [$value];
+                } else {
+                    $headers[] = $value;
                 }
-                return $length;
+                return strlen($h);
             },
         ];
 
+        if (isset($request['version'])) {
+            $options[CURLOPT_HTTP_VERSION] = $request['version'] == 1.1 ? CURL_HTTP_VERSION_1_1 : CURL_HTTP_VERSION_1_0;
+        }
+
         if (defined('CURLOPT_PROTOCOLS')) {
             $options[CURLOPT_PROTOCOLS] = CURLPROTO_HTTP | CURLPROTO_HTTPS;
         }
diff --git a/core/vendor/guzzlehttp/ringphp/src/Client/StreamHandler.php b/core/vendor/guzzlehttp/ringphp/src/Client/StreamHandler.php
index 905b2b6..3a18ec6 100644
--- a/core/vendor/guzzlehttp/ringphp/src/Client/StreamHandler.php
+++ b/core/vendor/guzzlehttp/ringphp/src/Client/StreamHandler.php
@@ -214,10 +214,10 @@ private function createStream(
 
     private function getDefaultOptions(array $request)
     {
-        $headers = [];
+        $headers = "";
         foreach ($request['headers'] as $name => $value) {
             foreach ((array) $value as $val) {
-                $headers[] = "$name: $val";
+                $headers .= "$name: $val\r\n";
             }
         }
 
@@ -225,7 +225,7 @@ private function getDefaultOptions(array $request)
             'http' => [
                 'method'           => $request['http_method'],
                 'header'           => $headers,
-                'protocol_version' => '1.1',
+                'protocol_version' => isset($request['version']) ? $request['version'] : 1.1,
                 'ignore_errors'    => true,
                 'follow_location'  => 0,
             ],
@@ -236,10 +236,12 @@ private function getDefaultOptions(array $request)
             $context['http']['content'] = $body;
             // Prevent the HTTP handler from adding a Content-Type header.
             if (!Core::hasHeader($request, 'Content-Type')) {
-                $context['http']['header'][] .= "Content-Type:";
+                $context['http']['header'] .= "Content-Type:\r\n";
             }
         }
 
+        $context['http']['header'] = rtrim($context['http']['header']);
+
         return $context;
     }
 
diff --git a/core/vendor/guzzlehttp/ringphp/src/Core.php b/core/vendor/guzzlehttp/ringphp/src/Core.php
index 112d755..dd7d1a0 100644
--- a/core/vendor/guzzlehttp/ringphp/src/Core.php
+++ b/core/vendor/guzzlehttp/ringphp/src/Core.php
@@ -41,24 +41,17 @@ public static function callArray(array $functions)
      */
     public static function headerLines($message, $header)
     {
-        // Slight optimization for exact matches.
-        if (isset($message['headers'][$header])) {
-            return $message['headers'][$header];
-        }
-
-        // Check for message with no headers after the "fast" isset check.
-        if (!isset($message['headers'])) {
-            return [];
-        }
+        $result = [];
 
-        // Iterate and case-insensitively find the header by name.
-        foreach ($message['headers'] as $name => $value) {
-            if (!strcasecmp($name, $header)) {
-                return $value;
+        if (!empty($message['headers'])) {
+            foreach ($message['headers'] as $name => $value) {
+                if (!strcasecmp($name, $header)) {
+                    $result = array_merge($result, $value);
+                }
             }
         }
 
-        return [];
+        return $result;
     }
 
     /**
@@ -91,18 +84,17 @@ public static function header($message, $header)
      */
     public static function firstHeader($message, $header)
     {
-        $match = self::headerLines($message, $header);
-
-        if (!isset($match[0])) {
-            return null;
-        }
-
-        // Return the match itself if it is a single value.
-        if (!($pos = strpos($match[0], ','))) {
-            return $match[0];
+        if (!empty($message['headers'])) {
+            foreach ($message['headers'] as $name => $value) {
+                if (!strcasecmp($name, $header)) {
+                    // Return the match itself if it is a single value.
+                    $pos = strpos($value[0], ',');
+                    return $pos ? substr($value[0], 0, $pos) : $value[0];
+                }
+            }
         }
 
-        return substr($match[0], 0, $pos);
+        return null;
     }
 
     /**
@@ -115,7 +107,15 @@ public static function firstHeader($message, $header)
      */
     public static function hasHeader($message, $header)
     {
-        return (bool) self::headerLines($message, $header);
+        if (!empty($message['headers'])) {
+            foreach ($message['headers'] as $name => $value) {
+                if (!strcasecmp($name, $header)) {
+                    return true;
+                }
+            }
+        }
+
+        return false;
     }
 
     /**
diff --git a/core/vendor/guzzlehttp/ringphp/src/Future/BaseFutureTrait.php b/core/vendor/guzzlehttp/ringphp/src/Future/BaseFutureTrait.php
index 0d15ed7..e6a7ca7 100644
--- a/core/vendor/guzzlehttp/ringphp/src/Future/BaseFutureTrait.php
+++ b/core/vendor/guzzlehttp/ringphp/src/Future/BaseFutureTrait.php
@@ -28,9 +28,7 @@
     private $isRealized = false;
 
     /**
-     * @param PromiseInterface $promise Promise to shadow with the future. Only
-     *                                  supply if the promise is not owned
-     *                                  by the deferred value.
+     * @param PromiseInterface $promise Promise to shadow with the future.
      * @param callable         $wait    Function that blocks until the deferred
      *                                  computation has been resolved. This
      *                                  function MUST resolve the deferred value
diff --git a/core/vendor/guzzlehttp/ringphp/tests/Client/CurlFactoryTest.php b/core/vendor/guzzlehttp/ringphp/tests/Client/CurlFactoryTest.php
index 055e43a..0f787c9 100644
--- a/core/vendor/guzzlehttp/ringphp/tests/Client/CurlFactoryTest.php
+++ b/core/vendor/guzzlehttp/ringphp/tests/Client/CurlFactoryTest.php
@@ -404,6 +404,19 @@ public function testDoesNotForceDecode()
         $this->assertEquals($content, Core::body($response));
     }
 
+    public function testProtocolVersion()
+    {
+        Server::flush();
+        Server::enqueue([['status' => 200]]);
+        $a = new CurlMultiHandler();
+        $a([
+            'http_method' => 'GET',
+            'headers'     => ['host' => [Server::$host]],
+            'version'     => 1.0,
+        ]);
+        $this->assertEquals(CURL_HTTP_VERSION_1_0, $_SERVER['_curl'][CURLOPT_HTTP_VERSION]);
+    }
+
     /**
      * @expectedException \InvalidArgumentException
      */
@@ -570,7 +583,7 @@ public function testDoesNotAddMultipleContentLengthHeaders()
             'http_method' => 'GET',
             'headers'     => [
                 'host'           => [Server::$host],
-                'content-length' => 3,
+                'content-length' => [3],
             ],
             'body' => 'foo',
         ]);
@@ -709,6 +722,71 @@ function () {},
         );
         $this->assertInstanceOf('GuzzleHttp\Ring\Exception\ConnectException', $response['error']);
     }
+
+    public function testParsesLastResponseOnly()
+    {
+        $response1  = [
+            'status'  => 301,
+            'headers' => [
+                'Content-Length' => ['0'],
+                'Location' => ['/foo']
+            ]
+        ];
+
+        $response2 = [
+            'status'  => 200,
+            'headers' => [
+                'Content-Length' => ['0'],
+                'Foo' => ['bar']
+            ]
+        ];
+
+        Server::flush();
+        Server::enqueue([$response1, $response2]);
+
+        $a = new CurlMultiHandler();
+        $response = $a([
+            'http_method' => 'GET',
+            'headers'     => ['Host'   => [Server::$host]],
+            'client' => [
+                'curl' => [
+                    CURLOPT_FOLLOWLOCATION => true
+                ]
+            ]
+        ])->wait();
+
+        $this->assertEquals(1, $response['transfer_stats']['redirect_count']);
+        $this->assertEquals('http://127.0.0.1:8125/foo', $response['effective_url']);
+        $this->assertEquals(['bar'], $response['headers']['Foo']);
+        $this->assertEquals(200, $response['status']);
+        $this->assertFalse(Core::hasHeader($response, 'Location'));
+    }
+
+    public function testMaintainsMultiHeaderOrder()
+    {
+        Server::flush();
+        Server::enqueue([
+            [
+                'status'  => 200,
+                'headers' => [
+                    'Content-Length' => ['0'],
+                    'Foo' => ['a', 'b'],
+                    'foo' => ['c', 'd'],
+                ]
+            ]
+        ]);
+
+        $a = new CurlMultiHandler();
+        $response = $a([
+            'http_method' => 'GET',
+            'headers'     => ['Host'   => [Server::$host]]
+        ])->wait();
+
+        $this->assertEquals(
+            ['a', 'b', 'c', 'd'],
+            Core::headerLines($response, 'Foo')
+        );
+    }
 }
 
 }
diff --git a/core/vendor/guzzlehttp/ringphp/tests/Client/StreamHandlerTest.php b/core/vendor/guzzlehttp/ringphp/tests/Client/StreamHandlerTest.php
index 98ff7e7..8f63e29 100644
--- a/core/vendor/guzzlehttp/ringphp/tests/Client/StreamHandlerTest.php
+++ b/core/vendor/guzzlehttp/ringphp/tests/Client/StreamHandlerTest.php
@@ -202,6 +202,20 @@ public function testDoesNotForceGzipDecode()
         $this->assertSame($content, Core::body($response));
     }
 
+    public function testProtocolVersion()
+    {
+        $this->queueRes();
+        $handler = new StreamHandler();
+        $handler([
+            'http_method' => 'GET',
+            'uri'         => '/',
+            'headers'     => ['host' => [Server::$host]],
+            'version'     => 1.0,
+        ]);
+
+        $this->assertEquals(1.0, Server::received()[0]['version']);
+    }
+
     protected function getSendResult(array $opts)
     {
         $this->queueRes();
diff --git a/core/vendor/guzzlehttp/ringphp/tests/CoreTest.php b/core/vendor/guzzlehttp/ringphp/tests/CoreTest.php
index 240fb69..49522f2 100644
--- a/core/vendor/guzzlehttp/ringphp/tests/CoreTest.php
+++ b/core/vendor/guzzlehttp/ringphp/tests/CoreTest.php
@@ -15,6 +15,22 @@ public function testReturnsNullNoHeadersAreSet()
         $this->assertNull(Core::firstHeader([], 'Foo'));
     }
 
+    public function testChecksIfHasHeader()
+    {
+        $message = [
+            'headers' => [
+                'Foo' => ['Bar', 'Baz'],
+                'foo' => ['hello'],
+                'bar' => ['1']
+            ]
+        ];
+        $this->assertTrue(Core::hasHeader($message, 'Foo'));
+        $this->assertTrue(Core::hasHeader($message, 'foo'));
+        $this->assertTrue(Core::hasHeader($message, 'FoO'));
+        $this->assertTrue(Core::hasHeader($message, 'bar'));
+        $this->assertFalse(Core::hasHeader($message, 'barr'));
+    }
+
     public function testReturnsFirstHeaderWhenSimple()
     {
         $this->assertEquals('Bar', Core::firstHeader([
@@ -37,6 +53,19 @@ public function testExtractsCaseInsensitiveHeader()
         );
     }
 
+    public function testExtractsCaseInsensitiveHeaderLines()
+    {
+        $this->assertEquals(
+            ['a', 'b', 'c', 'd'],
+            Core::headerLines([
+                'headers' => [
+                    'foo' => ['a', 'b'],
+                    'Foo' => ['c', 'd']
+                ]
+            ], 'foo')
+        );
+    }
+
     public function testExtractsHeaderLines()
     {
         $this->assertEquals(
diff --git a/core/vendor/phpunit/phpunit-mock-objects/README.md b/core/vendor/phpunit/phpunit-mock-objects/README.md
index 60dd0f7..cb855a8 100644
--- a/core/vendor/phpunit/phpunit-mock-objects/README.md
+++ b/core/vendor/phpunit/phpunit-mock-objects/README.md
@@ -1,5 +1,5 @@
 [![Latest Stable Version](https://poser.pugx.org/phpunit/phpunit-mock-objects/v/stable.png)](https://packagist.org/packages/phpunit/phpunit-mock-objects)
-[![Build Status](https://travis-ci.org/sebastianbergmann/phpunit-mock-objects.png?branch=2.0)](https://travis-ci.org/sebastianbergmann/phpunit-mock-objects)
+[![Build Status](https://travis-ci.org/sebastianbergmann/phpunit-mock-objects.png?branch=master)](https://travis-ci.org/sebastianbergmann/phpunit-mock-objects)
 
 # PHPUnit_MockObject
 
@@ -15,7 +15,7 @@ To add PHPUnit_MockObject as a local, per-project dependency to your project, si
 
     {
         "require": {
-            "phpunit/phpunit-mock-objects": "2.0.*"
+            "phpunit/phpunit-mock-objects": "2.1.*"
         }
     }
 
diff --git a/core/vendor/phpunit/phpunit-mock-objects/build/travis-ci.xml b/core/vendor/phpunit/phpunit-mock-objects/build/travis-ci.xml
index 92b0c16..f2b2216 100644
--- a/core/vendor/phpunit/phpunit-mock-objects/build/travis-ci.xml
+++ b/core/vendor/phpunit/phpunit-mock-objects/build/travis-ci.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/4.0/phpunit.xsd"
+         xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/4.1/phpunit.xsd"
          bootstrap="../tests/bootstrap.php"
          backupGlobals="false"
          verbose="true">
diff --git a/core/vendor/phpunit/phpunit-mock-objects/composer.json b/core/vendor/phpunit/phpunit-mock-objects/composer.json
index 2dd28d6..46fda2b 100644
--- a/core/vendor/phpunit/phpunit-mock-objects/composer.json
+++ b/core/vendor/phpunit/phpunit-mock-objects/composer.json
@@ -24,7 +24,7 @@
         "phpunit/php-text-template": "~1.2"
     },
     "require-dev": {
-        "phpunit/phpunit": ">=4.0.0,<4.1.0"
+        "phpunit/phpunit": "~4.1"
     },
     "suggest": {
         "ext-soap": "*"
@@ -36,7 +36,7 @@
     },
     "extra": {
         "branch-alias": {
-            "dev-master": "2.0.x-dev"
+            "dev-master": "2.1.x-dev"
         }
     },
     "include-path": [
diff --git a/core/vendor/phpunit/phpunit-mock-objects/phpunit.xml.dist b/core/vendor/phpunit/phpunit-mock-objects/phpunit.xml.dist
index 170ba32..84db111 100644
--- a/core/vendor/phpunit/phpunit-mock-objects/phpunit.xml.dist
+++ b/core/vendor/phpunit/phpunit-mock-objects/phpunit.xml.dist
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/4.0/phpunit.xsd"
+         xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/4.1/phpunit.xsd"
          bootstrap="tests/bootstrap.php"
          backupGlobals="false"
          verbose="true">
diff --git a/core/vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Builder/InvocationMocker.php b/core/vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Builder/InvocationMocker.php
index 3bab645..9b83c17 100644
--- a/core/vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Builder/InvocationMocker.php
+++ b/core/vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Builder/InvocationMocker.php
@@ -212,13 +212,12 @@ public function after($id)
     }
 
     /**
-     * @param  mixed                                                 $argument, ...
-     * @return PHPUnit_Framework_MockObject_Builder_InvocationMocker
+     * Validate that a parameters matcher can be defined, throw exceptions otherwise.
+     *
+     * @throws PHPUnit_Framework_Exception
      */
-    public function with()
+    private function canDefineParameters()
     {
-        $args = func_get_args();
-
         if ($this->matcher->methodNameMatcher === NULL) {
             throw new PHPUnit_Framework_Exception(
               'Method name matcher is not defined, cannot define parameter ' .
@@ -231,6 +230,17 @@ public function with()
               'Parameter matcher is already defined, cannot redefine'
             );
         }
+    }
+
+    /**
+     * @param  mixed                                                 $argument, ...
+     * @return PHPUnit_Framework_MockObject_Builder_InvocationMocker
+     */
+    public function with()
+    {
+        $args = func_get_args();
+
+        $this->canDefineParameters();
 
         $this->matcher->parametersMatcher = new PHPUnit_Framework_MockObject_Matcher_Parameters($args);
 
@@ -238,22 +248,27 @@ public function with()
     }
 
     /**
+     * @param  mixed ...$argument
+     * @return PHPUnit_Framework_MockObject_Builder_InvocationMocker
+     */
+    public function withConsecutive() {
+
+        $args = func_get_args();
+
+        $this->canDefineParameters();
+
+        $this->matcher->parametersMatcher =
+          new PHPUnit_Framework_MockObject_Matcher_ConsecutiveParameters($args);
+
+        return $this;
+    }
+
+    /**
      * @return PHPUnit_Framework_MockObject_Builder_InvocationMocker
      */
     public function withAnyParameters()
     {
-        if ($this->matcher->methodNameMatcher === NULL) {
-            throw new PHPUnit_Framework_Exception(
-              'Method name matcher is not defined, cannot define parameter ' .
-              'matcher without one'
-            );
-        }
-
-        if ($this->matcher->parametersMatcher !== NULL) {
-            throw new PHPUnit_Framework_Exception(
-              'Parameter matcher is already defined, cannot redefine'
-            );
-        }
+        $this->canDefineParameters();
 
         $this->matcher->parametersMatcher = new PHPUnit_Framework_MockObject_Matcher_AnyParameters;
 
diff --git a/core/vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/ConsecutiveParameters.php b/core/vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/ConsecutiveParameters.php
new file mode 100644
index 0000000..7f17225
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/ConsecutiveParameters.php
@@ -0,0 +1,162 @@
+<?php
+/**
+ * PHPUnit
+ *
+ * Copyright (c) 2010-2014, Sebastian Bergmann <sebastian@phpunit.de>.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ *   * Redistributions of source code must retain the above copyright
+ *     notice, this list of conditions and the following disclaimer.
+ *
+ *   * Redistributions in binary form must reproduce the above copyright
+ *     notice, this list of conditions and the following disclaimer in
+ *     the documentation and/or other materials provided with the
+ *     distribution.
+ *
+ *   * Neither the name of Sebastian Bergmann nor the names of his
+ *     contributors may be used to endorse or promote products derived
+ *     from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * @package    PHPUnit_MockObject
+ * @author     Sebastian Bergmann <sebastian@phpunit.de>
+ * @copyright  2010-2014 Sebastian Bergmann <sebastian@phpunit.de>
+ * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
+ * @link       http://github.com/sebastianbergmann/phpunit-mock-objects
+ */
+
+/**
+ * Invocation matcher which looks for sets of specific parameters in the invocations.
+ *
+ * Checks the parameters of the incoming invocations, the parameter list is
+ * checked against the defined constraints in $parameters. If the constraint
+ * is met it will return true in matches().
+ *
+ * It takes a list of match groups and and increases a call index after each invocation.
+ * So the first invocation uses the first group of constraints, the second the next and so on.
+ *
+ * @package    PHPUnit_MockObject
+ * @author     Sebastian Bergmann <sebastian@phpunit.de>
+ * @copyright  2010-2014 Sebastian Bergmann <sebastian@phpunit.de>
+ * @license    http://www.opensource.org/licenses/BSD-3-Clause  The BSD 3-Clause License
+ * @version    Release: @package_version@
+ * @link       http://github.com/sebastianbergmann/phpunit-mock-objects
+ */
+class PHPUnit_Framework_MockObject_Matcher_ConsecutiveParameters
+  extends PHPUnit_Framework_MockObject_Matcher_StatelessInvocation
+{
+
+  /**
+   * @var array
+   */
+  private $_parameterGroups = array();
+
+  /**
+   * @var array
+   */
+  private $_invocations = array();
+
+  /**
+   * @param array $parameterGroups
+   */
+  public function __construct(array $parameterGroups)
+  {
+      foreach ($parameterGroups as $index => $parameters) {
+          foreach ($parameters as $parameter) {
+              if (!($parameter instanceof \PHPUnit_Framework_Constraint))
+              {
+                  $parameter = new \PHPUnit_Framework_Constraint_IsEqual($parameter);
+              }
+              $this->_parameterGroups[$index][] = $parameter;
+          }
+      }
+  }
+
+    /**
+     * @return string
+     */
+    public function toString()
+    {
+        $text = 'with consecutive parameters';
+
+        return $text;
+    }
+
+  /**
+   * @param PHPUnit_Framework_MockObject_Invocation $invocation
+   * @return bool
+   */
+  public function matches(PHPUnit_Framework_MockObject_Invocation $invocation)
+  {
+      $this->_invocations[] = $invocation;
+      $callIndex = count($this->_invocations) - 1;
+      $this->verifyInvocation($invocation, $callIndex);
+      return FALSE;
+  }
+
+  public function verify()
+  {
+      foreach ($this->_invocations as $callIndex => $invocation) {
+        $this->verifyInvocation($invocation, $callIndex);
+      }
+  }
+
+  /**
+   * Verify a single invocation
+   *
+   * @param PHPUnit_Framework_MockObject_Invocation $invocation
+   * @param int $callIndex
+   * @throws PHPUnit_Framework_ExpectationFailedException
+   */
+  private function verifyInvocation(PHPUnit_Framework_MockObject_Invocation $invocation, $callIndex)
+  {
+
+      if (isset($this->_parameterGroups[$callIndex])) {
+          $parameters = $this->_parameterGroups[$callIndex];
+      }
+
+      if ($invocation === NULL) {
+          throw new PHPUnit_Framework_ExpectationFailedException(
+            'Mocked method does not exist.'
+          );
+      }
+
+      if (count($invocation->parameters) < count($parameters)) {
+          throw new PHPUnit_Framework_ExpectationFailedException(
+              sprintf(
+                'Parameter count for invocation %s is too low.',
+                $invocation->toString()
+              )
+          );
+      }
+
+      foreach ($parameters as $i => $parameter) {
+          $parameter->evaluate(
+              $invocation->parameters[$i],
+              sprintf(
+                'Parameter %s for invocation #%d %s does not match expected ' .
+                'value.',
+                $i,
+                $callIndex,
+                $invocation->toString()
+              )
+          );
+      }
+  }
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/Parameters.php b/core/vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/Parameters.php
index 1bb79f2..90abaa5 100644
--- a/core/vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/Parameters.php
+++ b/core/vendor/phpunit/phpunit-mock-objects/src/Framework/MockObject/Matcher/Parameters.php
@@ -110,9 +110,7 @@ public function toString()
     public function matches(PHPUnit_Framework_MockObject_Invocation $invocation)
     {
         $this->invocation = $invocation;
-        $this->verify();
-
-        return count($invocation->parameters) < count($this->parameters);
+        return $this->verify();
     }
 
     /**
@@ -156,5 +154,7 @@ public function verify()
               )
             );
         }
+
+        return true;
     }
 }
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/Matcher/ConsecutiveParametersTest.php b/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/Matcher/ConsecutiveParametersTest.php
new file mode 100644
index 0000000..d12ba5b
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/Matcher/ConsecutiveParametersTest.php
@@ -0,0 +1,32 @@
+<?php
+class Framework_MockObject_Matcher_ConsecutiveParametersTest extends PHPUnit_Framework_TestCase
+{
+    public function testIntegration()
+    {
+        $mock = $this->getMock('stdClass', array('foo'));
+        $mock
+            ->expects($this->any())
+            ->method('foo')
+            ->withConsecutive(
+                array('bar'),
+                array(21, 42)
+            );
+        $mock->foo('bar');
+        $mock->foo(21, 42);
+    }
+
+    public function testIntegrationExpectingException()
+    {
+        $mock = $this->getMock('stdClass', array('foo'));
+        $mock
+            ->expects($this->any())
+            ->method('foo')
+            ->withConsecutive(
+                array('bar'),
+                array(21, 42)
+            );
+        $mock->foo('bar');
+        $this->setExpectedException('PHPUnit_Framework_ExpectationFailedException');
+        $mock->foo('invalid');
+    }
+}
\ No newline at end of file
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/wsdl_class.phpt b/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/wsdl_class.phpt
index 6b2d0a3..06b255f 100644
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/wsdl_class.phpt
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/wsdl_class.phpt
@@ -11,7 +11,7 @@ require __DIR__ . '/../../vendor/autoload.php';
 $generator = new PHPUnit_Framework_MockObject_Generator;
 
 print $generator->generateClassFromWsdl(
-  dirname(dirname(__FILE__)) . '/_files/GoogleSearch.wsdl',
+  dirname(dirname(__FILE__)) . '/_fixture/GoogleSearch.wsdl',
   'GoogleSearch'
 );
 ?>
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/wsdl_class_namespace.phpt b/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/wsdl_class_namespace.phpt
index dc819cf..9460e6b 100644
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/wsdl_class_namespace.phpt
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/wsdl_class_namespace.phpt
@@ -11,7 +11,7 @@ require __DIR__ . '/../../vendor/autoload.php';
 $generator = new PHPUnit_Framework_MockObject_Generator;
 
 print $generator->generateClassFromWsdl(
-  dirname(dirname(__FILE__)) . '/_files/GoogleSearch.wsdl',
+  dirname(dirname(__FILE__)) . '/_fixture/GoogleSearch.wsdl',
   'My\\Space\\GoogleSearch'
 );
 ?>
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/wsdl_class_partial.phpt b/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/wsdl_class_partial.phpt
index 879fbd3..fc814bd 100644
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/wsdl_class_partial.phpt
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/MockObject/wsdl_class_partial.phpt
@@ -11,7 +11,7 @@ require __DIR__ . '/../../vendor/autoload.php';
 $generator = new PHPUnit_Framework_MockObject_Generator;
 
 print $generator->generateClassFromWsdl(
-  dirname(dirname(__FILE__)) . '/_files/GoogleSearch.wsdl',
+  dirname(dirname(__FILE__)) . '/_fixture/GoogleSearch.wsdl',
   'GoogleSearch',
   array('doGoogleSearch')
 );
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/MockObjectTest.php b/core/vendor/phpunit/phpunit-mock-objects/tests/MockObjectTest.php
index 2b37338..ec195f1 100644
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/MockObjectTest.php
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/MockObjectTest.php
@@ -730,7 +730,7 @@ public function testMockArgumentsPassedByReference4()
      */
     public function testCreateMockFromWsdl()
     {
-        $mock = $this->getMockFromWsdl(__DIR__ . '/_files/GoogleSearch.wsdl', 'WsdlMock');
+        $mock = $this->getMockFromWsdl(__DIR__ . '/_fixture/GoogleSearch.wsdl', 'WsdlMock');
         $this->assertStringStartsWith(
             'Mock_WsdlMock_',
             get_class($mock)
@@ -742,7 +742,7 @@ public function testCreateMockFromWsdl()
      */
     public function testCreateNamespacedMockFromWsdl()
     {
-        $mock = $this->getMockFromWsdl(__DIR__ . '/_files/GoogleSearch.wsdl', 'My\\Space\\WsdlMock');
+        $mock = $this->getMockFromWsdl(__DIR__ . '/_fixture/GoogleSearch.wsdl', 'My\\Space\\WsdlMock');
         $this->assertStringStartsWith(
             'Mock_WsdlMock_',
             get_class($mock)
@@ -754,8 +754,8 @@ public function testCreateNamespacedMockFromWsdl()
      */
     public function testCreateTwoMocksOfOneWsdlFile()
     {
-        $mock = $this->getMockFromWsdl(__DIR__ . '/_files/GoogleSearch.wsdl');
-        $mock = $this->getMockFromWsdl(__DIR__ . '/_files/GoogleSearch.wsdl');
+        $mock = $this->getMockFromWsdl(__DIR__ . '/_fixture/GoogleSearch.wsdl');
+        $mock = $this->getMockFromWsdl(__DIR__ . '/_fixture/GoogleSearch.wsdl');
     }
 
     /**
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/AbstractMockTestClass.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/AbstractMockTestClass.php
deleted file mode 100644
index b006e2d..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/AbstractMockTestClass.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-abstract class AbstractMockTestClass
-{
-    abstract public function doSomething();
-
-    public function returnAnything()
-    {
-        return 1;
-    }
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/AbstractTrait.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/AbstractTrait.php
deleted file mode 100644
index 071535c..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/AbstractTrait.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-trait AbstractTrait
-{
-    abstract public function doSomething();
-
-    public function mockableMethod()
-    {
-        return TRUE;
-    }
-
-    public function anotherMockableMethod()
-    {
-        return TRUE;
-    }
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/AnInterface.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/AnInterface.php
deleted file mode 100644
index 5b7d4cc..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/AnInterface.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-interface AnInterface
-{
-    public function doSomething();
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/AnotherInterface.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/AnotherInterface.php
deleted file mode 100644
index 62bff0a..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/AnotherInterface.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-interface AnotherInterface
-{
-    public function doSomethingElse();
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/Bar.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/Bar.php
deleted file mode 100644
index 4a4d165..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/Bar.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class Bar
-{
-    public function doSomethingElse()
-    {
-        return 'result';
-    }
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/Foo.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/Foo.php
deleted file mode 100644
index 16a9ed7..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/Foo.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-class Foo
-{
-    public function doSomething(Bar $bar)
-    {
-        return $bar->doSomethingElse();
-    }
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/FunctionCallback.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/FunctionCallback.php
deleted file mode 100644
index c12ac6c..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/FunctionCallback.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-function functionCallback()
-{
-    $args = func_get_args();
-
-    if ($args == array('foo', 'bar')) {
-        return 'pass';
-    }
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/GoogleSearch.wsdl b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/GoogleSearch.wsdl
deleted file mode 100644
index e448501..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/GoogleSearch.wsdl
+++ /dev/null
@@ -1,198 +0,0 @@
-<?xml version="1.0"?>
-
-<!-- WSDL description of the Google Web APIs.
-     The Google Web APIs are in beta release. All interfaces are subject to
-     change as we refine and extend our APIs. Please see the terms of use
-     for more information. -->
-
-<!-- Revision 2002-08-16 -->
-
-<definitions name="GoogleSearch"
-             targetNamespace="urn:GoogleSearch"
-             xmlns:typens="urn:GoogleSearch"
-             xmlns:xsd="http://www.w3.org/2001/XMLSchema"
-             xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
-             xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
-             xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
-             xmlns="http://schemas.xmlsoap.org/wsdl/">
-
-  <!-- Types for search - result elements, directory categories -->
-
-  <types>
-    <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
-                targetNamespace="urn:GoogleSearch">
-
-      <xsd:complexType name="GoogleSearchResult">
-        <xsd:all>
-          <xsd:element name="documentFiltering"           type="xsd:boolean"/>
-          <xsd:element name="searchComments"              type="xsd:string"/>
-          <xsd:element name="estimatedTotalResultsCount"  type="xsd:int"/>
-          <xsd:element name="estimateIsExact"             type="xsd:boolean"/>
-          <xsd:element name="resultElements"              type="typens:ResultElementArray"/>
-          <xsd:element name="searchQuery"                 type="xsd:string"/>
-          <xsd:element name="startIndex"                  type="xsd:int"/>
-          <xsd:element name="endIndex"                    type="xsd:int"/>
-          <xsd:element name="searchTips"                  type="xsd:string"/>
-          <xsd:element name="directoryCategories"         type="typens:DirectoryCategoryArray"/>
-          <xsd:element name="searchTime"                  type="xsd:double"/>
-        </xsd:all>
-      </xsd:complexType>
-
-      <xsd:complexType name="ResultElement">
-        <xsd:all>
-          <xsd:element name="summary" type="xsd:string"/>
-          <xsd:element name="URL" type="xsd:string"/>
-          <xsd:element name="snippet" type="xsd:string"/>
-          <xsd:element name="title" type="xsd:string"/>
-          <xsd:element name="cachedSize" type="xsd:string"/>
-          <xsd:element name="relatedInformationPresent" type="xsd:boolean"/>
-          <xsd:element name="hostName" type="xsd:string"/>
-          <xsd:element name="directoryCategory" type="typens:DirectoryCategory"/>
-          <xsd:element name="directoryTitle" type="xsd:string"/>
-        </xsd:all>
-      </xsd:complexType>
-
-      <xsd:complexType name="ResultElementArray">
-        <xsd:complexContent>
-          <xsd:restriction base="soapenc:Array">
-             <xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:ResultElement[]"/>
-          </xsd:restriction>
-        </xsd:complexContent>
-      </xsd:complexType>
-
-      <xsd:complexType name="DirectoryCategoryArray">
-        <xsd:complexContent>
-          <xsd:restriction base="soapenc:Array">
-             <xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:DirectoryCategory[]"/>
-          </xsd:restriction>
-        </xsd:complexContent>
-      </xsd:complexType>
-
-      <xsd:complexType name="DirectoryCategory">
-        <xsd:all>
-          <xsd:element name="fullViewableName" type="xsd:string"/>
-          <xsd:element name="specialEncoding" type="xsd:string"/>
-        </xsd:all>
-      </xsd:complexType>
-
-    </xsd:schema>
-  </types>
-
-  <!-- Messages for Google Web APIs - cached page, search, spelling. -->
-
-  <message name="doGetCachedPage">
-    <part name="key"            type="xsd:string"/>
-    <part name="url"            type="xsd:string"/>
-  </message>
-
-  <message name="doGetCachedPageResponse">
-    <part name="return"         type="xsd:base64Binary"/>
-  </message>
-
-  <message name="doSpellingSuggestion">
-    <part name="key"            type="xsd:string"/>
-    <part name="phrase"         type="xsd:string"/>
-  </message>
-
-  <message name="doSpellingSuggestionResponse">
-    <part name="return"         type="xsd:string"/>
-  </message>
-
-  <!-- note, ie and oe are ignored by server; all traffic is UTF-8. -->
-
-  <message name="doGoogleSearch">
-    <part name="key"            type="xsd:string"/>
-    <part name="q"              type="xsd:string"/>
-    <part name="start"          type="xsd:int"/>
-    <part name="maxResults"     type="xsd:int"/>
-    <part name="filter"         type="xsd:boolean"/>
-    <part name="restrict"       type="xsd:string"/>
-    <part name="safeSearch"     type="xsd:boolean"/>
-    <part name="lr"             type="xsd:string"/>
-    <part name="ie"             type="xsd:string"/>
-    <part name="oe"             type="xsd:string"/>
-  </message>
-
-  <message name="doGoogleSearchResponse">
-    <part name="return"         type="typens:GoogleSearchResult"/>
-  </message>
-
-  <!-- Port for Google Web APIs, "GoogleSearch" -->
-
-  <portType name="GoogleSearchPort">
-
-    <operation name="doGetCachedPage">
-      <input message="typens:doGetCachedPage"/>
-      <output message="typens:doGetCachedPageResponse"/>
-    </operation>
-
-    <operation name="doSpellingSuggestion">
-      <input message="typens:doSpellingSuggestion"/>
-      <output message="typens:doSpellingSuggestionResponse"/>
-    </operation>
-
-    <operation name="doGoogleSearch">
-      <input message="typens:doGoogleSearch"/>
-      <output message="typens:doGoogleSearchResponse"/>
-    </operation>
-
-  </portType>
-
-
-  <!-- Binding for Google Web APIs - RPC, SOAP over HTTP -->
-
-  <binding name="GoogleSearchBinding" type="typens:GoogleSearchPort">
-    <soap:binding style="rpc"
-                  transport="http://schemas.xmlsoap.org/soap/http"/>
-
-    <operation name="doGetCachedPage">
-      <soap:operation soapAction="urn:GoogleSearchAction"/>
-      <input>
-        <soap:body use="encoded"
-                   namespace="urn:GoogleSearch"
-                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
-      </input>
-      <output>
-        <soap:body use="encoded"
-                   namespace="urn:GoogleSearch"
-                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
-      </output>
-    </operation>
-
-    <operation name="doSpellingSuggestion">
-      <soap:operation soapAction="urn:GoogleSearchAction"/>
-      <input>
-        <soap:body use="encoded"
-                   namespace="urn:GoogleSearch"
-                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
-      </input>
-      <output>
-        <soap:body use="encoded"
-                   namespace="urn:GoogleSearch"
-                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
-      </output>
-    </operation>
-
-    <operation name="doGoogleSearch">
-      <soap:operation soapAction="urn:GoogleSearchAction"/>
-      <input>
-        <soap:body use="encoded"
-                   namespace="urn:GoogleSearch"
-                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
-      </input>
-      <output>
-        <soap:body use="encoded"
-                   namespace="urn:GoogleSearch"
-                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
-      </output>
-    </operation>
-  </binding>
-
-  <!-- Endpoint for Google Web APIs -->
-  <service name="GoogleSearchService">
-    <port name="GoogleSearchPort" binding="typens:GoogleSearchBinding">
-      <soap:address location="http://api.google.com/search/beta2"/>
-    </port>
-  </service>
-
-</definitions>
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/InterfaceWithStaticMethod.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/InterfaceWithStaticMethod.php
deleted file mode 100644
index 9e38d1e..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/InterfaceWithStaticMethod.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-interface InterfaceWithStaticMethod
-{
-    public static function staticMethod();
-}
-
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/MethodCallback.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/MethodCallback.php
deleted file mode 100644
index f8db62e..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/MethodCallback.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-class MethodCallback
-{
-    public static function staticCallback()
-    {
-        $args = func_get_args();
-
-        if ($args == array('foo', 'bar')) {
-            return 'pass';
-        }
-    }
-
-    public function nonStaticCallback()
-    {
-        $args = func_get_args();
-
-        if ($args == array('foo', 'bar')) {
-            return 'pass';
-        }
-    }
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/MethodCallbackByReference.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/MethodCallbackByReference.php
deleted file mode 100644
index ef26f3e..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/MethodCallbackByReference.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-class MethodCallbackByReference
-{
-    public function bar(&$a, &$b, $c)
-    {
-        Legacy::bar($a, $b, $c);
-    }
-
-    public function callback(&$a, &$b, $c)
-    {
-        $b = 1;
-    }
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/Mockable.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/Mockable.php
deleted file mode 100644
index a4ccb24..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/Mockable.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-class Mockable
-{
-    public $constructorArgs;
-    public $cloned;
-
-    public function __construct($arg1 = NULL, $arg2 = NULL)
-    {
-        $this->constructorArgs = array($arg1, $arg2);
-    }
-
-    public function mockableMethod()
-    {
-        // something different from NULL
-        return TRUE;
-    }
-
-    public function anotherMockableMethod()
-    {
-        // something different from NULL
-        return TRUE;
-    }
-
-    public function __clone()
-    {
-        $this->cloned = TRUE;
-    }
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/PartialMockTestClass.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/PartialMockTestClass.php
deleted file mode 100644
index 1b119f1..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/PartialMockTestClass.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-class PartialMockTestClass
-{
-    public $constructorCalled = FALSE;
-
-    public function __construct()
-    {
-        $this->constructorCalled = TRUE;
-    }
-
-    public function doSomething()
-    {
-    }
-
-    public function doAnotherThing()
-    {
-    }
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/SomeClass.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/SomeClass.php
deleted file mode 100644
index 2cd53b2..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/SomeClass.php
+++ /dev/null
@@ -1,13 +0,0 @@
-<?php
-class SomeClass
-{
-    public function doSomething($a, $b)
-    {
-        return NULL;
-    }
-
-    public function doSomethingElse($c)
-    {
-        return NULL;
-    }
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/StaticMockTestClass.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/StaticMockTestClass.php
deleted file mode 100644
index ac467c9..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/StaticMockTestClass.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-class StaticMockTestClass
-{
-    public static function doSomething()
-    {
-    }
-
-    public static function doSomethingElse()
-    {
-        return static::doSomething();
-    }
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/TraversableMockTestInterface.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_files/TraversableMockTestInterface.php
deleted file mode 100644
index 3467cce..0000000
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/_files/TraversableMockTestInterface.php
+++ /dev/null
@@ -1,4 +0,0 @@
-<?php
-interface TraversableMockTestInterface extends Traversable
-{
-}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/AbstractMockTestClass.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/AbstractMockTestClass.php
new file mode 100644
index 0000000..b006e2d
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/AbstractMockTestClass.php
@@ -0,0 +1,10 @@
+<?php
+abstract class AbstractMockTestClass
+{
+    abstract public function doSomething();
+
+    public function returnAnything()
+    {
+        return 1;
+    }
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/AbstractTrait.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/AbstractTrait.php
new file mode 100644
index 0000000..071535c
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/AbstractTrait.php
@@ -0,0 +1,15 @@
+<?php
+trait AbstractTrait
+{
+    abstract public function doSomething();
+
+    public function mockableMethod()
+    {
+        return TRUE;
+    }
+
+    public function anotherMockableMethod()
+    {
+        return TRUE;
+    }
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/AnInterface.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/AnInterface.php
new file mode 100644
index 0000000..5b7d4cc
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/AnInterface.php
@@ -0,0 +1,5 @@
+<?php
+interface AnInterface
+{
+    public function doSomething();
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/AnotherInterface.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/AnotherInterface.php
new file mode 100644
index 0000000..62bff0a
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/AnotherInterface.php
@@ -0,0 +1,5 @@
+<?php
+interface AnotherInterface
+{
+    public function doSomethingElse();
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/Bar.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/Bar.php
new file mode 100644
index 0000000..4a4d165
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/Bar.php
@@ -0,0 +1,8 @@
+<?php
+class Bar
+{
+    public function doSomethingElse()
+    {
+        return 'result';
+    }
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/Foo.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/Foo.php
new file mode 100644
index 0000000..16a9ed7
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/Foo.php
@@ -0,0 +1,8 @@
+<?php
+class Foo
+{
+    public function doSomething(Bar $bar)
+    {
+        return $bar->doSomethingElse();
+    }
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/FunctionCallback.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/FunctionCallback.php
new file mode 100644
index 0000000..c12ac6c
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/FunctionCallback.php
@@ -0,0 +1,9 @@
+<?php
+function functionCallback()
+{
+    $args = func_get_args();
+
+    if ($args == array('foo', 'bar')) {
+        return 'pass';
+    }
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/GoogleSearch.wsdl b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/GoogleSearch.wsdl
new file mode 100644
index 0000000..e448501
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/GoogleSearch.wsdl
@@ -0,0 +1,198 @@
+<?xml version="1.0"?>
+
+<!-- WSDL description of the Google Web APIs.
+     The Google Web APIs are in beta release. All interfaces are subject to
+     change as we refine and extend our APIs. Please see the terms of use
+     for more information. -->
+
+<!-- Revision 2002-08-16 -->
+
+<definitions name="GoogleSearch"
+             targetNamespace="urn:GoogleSearch"
+             xmlns:typens="urn:GoogleSearch"
+             xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+             xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+             xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
+             xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+             xmlns="http://schemas.xmlsoap.org/wsdl/">
+
+  <!-- Types for search - result elements, directory categories -->
+
+  <types>
+    <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
+                targetNamespace="urn:GoogleSearch">
+
+      <xsd:complexType name="GoogleSearchResult">
+        <xsd:all>
+          <xsd:element name="documentFiltering"           type="xsd:boolean"/>
+          <xsd:element name="searchComments"              type="xsd:string"/>
+          <xsd:element name="estimatedTotalResultsCount"  type="xsd:int"/>
+          <xsd:element name="estimateIsExact"             type="xsd:boolean"/>
+          <xsd:element name="resultElements"              type="typens:ResultElementArray"/>
+          <xsd:element name="searchQuery"                 type="xsd:string"/>
+          <xsd:element name="startIndex"                  type="xsd:int"/>
+          <xsd:element name="endIndex"                    type="xsd:int"/>
+          <xsd:element name="searchTips"                  type="xsd:string"/>
+          <xsd:element name="directoryCategories"         type="typens:DirectoryCategoryArray"/>
+          <xsd:element name="searchTime"                  type="xsd:double"/>
+        </xsd:all>
+      </xsd:complexType>
+
+      <xsd:complexType name="ResultElement">
+        <xsd:all>
+          <xsd:element name="summary" type="xsd:string"/>
+          <xsd:element name="URL" type="xsd:string"/>
+          <xsd:element name="snippet" type="xsd:string"/>
+          <xsd:element name="title" type="xsd:string"/>
+          <xsd:element name="cachedSize" type="xsd:string"/>
+          <xsd:element name="relatedInformationPresent" type="xsd:boolean"/>
+          <xsd:element name="hostName" type="xsd:string"/>
+          <xsd:element name="directoryCategory" type="typens:DirectoryCategory"/>
+          <xsd:element name="directoryTitle" type="xsd:string"/>
+        </xsd:all>
+      </xsd:complexType>
+
+      <xsd:complexType name="ResultElementArray">
+        <xsd:complexContent>
+          <xsd:restriction base="soapenc:Array">
+             <xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:ResultElement[]"/>
+          </xsd:restriction>
+        </xsd:complexContent>
+      </xsd:complexType>
+
+      <xsd:complexType name="DirectoryCategoryArray">
+        <xsd:complexContent>
+          <xsd:restriction base="soapenc:Array">
+             <xsd:attribute ref="soapenc:arrayType" wsdl:arrayType="typens:DirectoryCategory[]"/>
+          </xsd:restriction>
+        </xsd:complexContent>
+      </xsd:complexType>
+
+      <xsd:complexType name="DirectoryCategory">
+        <xsd:all>
+          <xsd:element name="fullViewableName" type="xsd:string"/>
+          <xsd:element name="specialEncoding" type="xsd:string"/>
+        </xsd:all>
+      </xsd:complexType>
+
+    </xsd:schema>
+  </types>
+
+  <!-- Messages for Google Web APIs - cached page, search, spelling. -->
+
+  <message name="doGetCachedPage">
+    <part name="key"            type="xsd:string"/>
+    <part name="url"            type="xsd:string"/>
+  </message>
+
+  <message name="doGetCachedPageResponse">
+    <part name="return"         type="xsd:base64Binary"/>
+  </message>
+
+  <message name="doSpellingSuggestion">
+    <part name="key"            type="xsd:string"/>
+    <part name="phrase"         type="xsd:string"/>
+  </message>
+
+  <message name="doSpellingSuggestionResponse">
+    <part name="return"         type="xsd:string"/>
+  </message>
+
+  <!-- note, ie and oe are ignored by server; all traffic is UTF-8. -->
+
+  <message name="doGoogleSearch">
+    <part name="key"            type="xsd:string"/>
+    <part name="q"              type="xsd:string"/>
+    <part name="start"          type="xsd:int"/>
+    <part name="maxResults"     type="xsd:int"/>
+    <part name="filter"         type="xsd:boolean"/>
+    <part name="restrict"       type="xsd:string"/>
+    <part name="safeSearch"     type="xsd:boolean"/>
+    <part name="lr"             type="xsd:string"/>
+    <part name="ie"             type="xsd:string"/>
+    <part name="oe"             type="xsd:string"/>
+  </message>
+
+  <message name="doGoogleSearchResponse">
+    <part name="return"         type="typens:GoogleSearchResult"/>
+  </message>
+
+  <!-- Port for Google Web APIs, "GoogleSearch" -->
+
+  <portType name="GoogleSearchPort">
+
+    <operation name="doGetCachedPage">
+      <input message="typens:doGetCachedPage"/>
+      <output message="typens:doGetCachedPageResponse"/>
+    </operation>
+
+    <operation name="doSpellingSuggestion">
+      <input message="typens:doSpellingSuggestion"/>
+      <output message="typens:doSpellingSuggestionResponse"/>
+    </operation>
+
+    <operation name="doGoogleSearch">
+      <input message="typens:doGoogleSearch"/>
+      <output message="typens:doGoogleSearchResponse"/>
+    </operation>
+
+  </portType>
+
+
+  <!-- Binding for Google Web APIs - RPC, SOAP over HTTP -->
+
+  <binding name="GoogleSearchBinding" type="typens:GoogleSearchPort">
+    <soap:binding style="rpc"
+                  transport="http://schemas.xmlsoap.org/soap/http"/>
+
+    <operation name="doGetCachedPage">
+      <soap:operation soapAction="urn:GoogleSearchAction"/>
+      <input>
+        <soap:body use="encoded"
+                   namespace="urn:GoogleSearch"
+                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+      </input>
+      <output>
+        <soap:body use="encoded"
+                   namespace="urn:GoogleSearch"
+                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+      </output>
+    </operation>
+
+    <operation name="doSpellingSuggestion">
+      <soap:operation soapAction="urn:GoogleSearchAction"/>
+      <input>
+        <soap:body use="encoded"
+                   namespace="urn:GoogleSearch"
+                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+      </input>
+      <output>
+        <soap:body use="encoded"
+                   namespace="urn:GoogleSearch"
+                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+      </output>
+    </operation>
+
+    <operation name="doGoogleSearch">
+      <soap:operation soapAction="urn:GoogleSearchAction"/>
+      <input>
+        <soap:body use="encoded"
+                   namespace="urn:GoogleSearch"
+                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+      </input>
+      <output>
+        <soap:body use="encoded"
+                   namespace="urn:GoogleSearch"
+                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+      </output>
+    </operation>
+  </binding>
+
+  <!-- Endpoint for Google Web APIs -->
+  <service name="GoogleSearchService">
+    <port name="GoogleSearchPort" binding="typens:GoogleSearchBinding">
+      <soap:address location="http://api.google.com/search/beta2"/>
+    </port>
+  </service>
+
+</definitions>
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/InterfaceWithStaticMethod.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/InterfaceWithStaticMethod.php
new file mode 100644
index 0000000..9e38d1e
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/InterfaceWithStaticMethod.php
@@ -0,0 +1,6 @@
+<?php
+interface InterfaceWithStaticMethod
+{
+    public static function staticMethod();
+}
+
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/MethodCallback.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/MethodCallback.php
new file mode 100644
index 0000000..f8db62e
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/MethodCallback.php
@@ -0,0 +1,21 @@
+<?php
+class MethodCallback
+{
+    public static function staticCallback()
+    {
+        $args = func_get_args();
+
+        if ($args == array('foo', 'bar')) {
+            return 'pass';
+        }
+    }
+
+    public function nonStaticCallback()
+    {
+        $args = func_get_args();
+
+        if ($args == array('foo', 'bar')) {
+            return 'pass';
+        }
+    }
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/MethodCallbackByReference.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/MethodCallbackByReference.php
new file mode 100644
index 0000000..ef26f3e
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/MethodCallbackByReference.php
@@ -0,0 +1,13 @@
+<?php
+class MethodCallbackByReference
+{
+    public function bar(&$a, &$b, $c)
+    {
+        Legacy::bar($a, $b, $c);
+    }
+
+    public function callback(&$a, &$b, $c)
+    {
+        $b = 1;
+    }
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/Mockable.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/Mockable.php
new file mode 100644
index 0000000..a4ccb24
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/Mockable.php
@@ -0,0 +1,28 @@
+<?php
+class Mockable
+{
+    public $constructorArgs;
+    public $cloned;
+
+    public function __construct($arg1 = NULL, $arg2 = NULL)
+    {
+        $this->constructorArgs = array($arg1, $arg2);
+    }
+
+    public function mockableMethod()
+    {
+        // something different from NULL
+        return TRUE;
+    }
+
+    public function anotherMockableMethod()
+    {
+        // something different from NULL
+        return TRUE;
+    }
+
+    public function __clone()
+    {
+        $this->cloned = TRUE;
+    }
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/PartialMockTestClass.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/PartialMockTestClass.php
new file mode 100644
index 0000000..1b119f1
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/PartialMockTestClass.php
@@ -0,0 +1,18 @@
+<?php
+class PartialMockTestClass
+{
+    public $constructorCalled = FALSE;
+
+    public function __construct()
+    {
+        $this->constructorCalled = TRUE;
+    }
+
+    public function doSomething()
+    {
+    }
+
+    public function doAnotherThing()
+    {
+    }
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/SomeClass.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/SomeClass.php
new file mode 100644
index 0000000..2cd53b2
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/SomeClass.php
@@ -0,0 +1,13 @@
+<?php
+class SomeClass
+{
+    public function doSomething($a, $b)
+    {
+        return NULL;
+    }
+
+    public function doSomethingElse($c)
+    {
+        return NULL;
+    }
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/StaticMockTestClass.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/StaticMockTestClass.php
new file mode 100644
index 0000000..ac467c9
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/StaticMockTestClass.php
@@ -0,0 +1,12 @@
+<?php
+class StaticMockTestClass
+{
+    public static function doSomething()
+    {
+    }
+
+    public static function doSomethingElse()
+    {
+        return static::doSomething();
+    }
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/TraversableMockTestInterface.php b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/TraversableMockTestInterface.php
new file mode 100644
index 0000000..3467cce
--- /dev/null
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/_fixture/TraversableMockTestInterface.php
@@ -0,0 +1,4 @@
+<?php
+interface TraversableMockTestInterface extends Traversable
+{
+}
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/autoload.php b/core/vendor/phpunit/phpunit-mock-objects/tests/autoload.php
index 7d4f0b6..cf63f63 100644
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/autoload.php
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/autoload.php
@@ -7,28 +7,29 @@ function($class) {
         static $classes = null;
         if ($classes === null) {
             $classes = array(
-                'abstractmocktestclass' => '/_files/AbstractMockTestClass.php',
-                'abstracttrait' => '/_files/AbstractTrait.php',
-                'aninterface' => '/_files/AnInterface.php',
-                'anotherinterface' => '/_files/AnotherInterface.php',
-                'bar' => '/_files/Bar.php',
+                'abstractmocktestclass' => '/_fixture/AbstractMockTestClass.php',
+                'abstracttrait' => '/_fixture/AbstractTrait.php',
+                'aninterface' => '/_fixture/AnInterface.php',
+                'anotherinterface' => '/_fixture/AnotherInterface.php',
+                'bar' => '/_fixture/Bar.php',
                 'classthatimplementsserializable' => '/_files/ClassThatImplementsSerializable.php',
                 'classwithstaticmethod' => '/_files/ClassWithStaticMethod.php',
-                'foo' => '/_files/Foo.php',
+                'foo' => '/_fixture/Foo.php',
                 'framework_mockbuildertest' => '/MockBuilderTest.php',
                 'framework_mockobject_generatortest' => '/GeneratorTest.php',
                 'framework_mockobject_invocation_objecttest' => '/MockObject/Invocation/ObjectTest.php',
                 'framework_mockobject_invocation_statictest' => '/MockObject/Invocation/StaticTest.php',
+                'framework_mockobject_matcher_consecutiveparameterstest' => '/MockObject/Matcher/ConsecutiveParametersTest.php',
                 'framework_mockobjecttest' => '/MockObjectTest.php',
                 'framework_proxyobjecttest' => '/ProxyObjectTest.php',
-                'interfacewithstaticmethod' => '/_files/InterfaceWithStaticMethod.php',
-                'methodcallback' => '/_files/MethodCallback.php',
-                'methodcallbackbyreference' => '/_files/MethodCallbackByReference.php',
-                'mockable' => '/_files/Mockable.php',
-                'partialmocktestclass' => '/_files/PartialMockTestClass.php',
-                'someclass' => '/_files/SomeClass.php',
-                'staticmocktestclass' => '/_files/StaticMockTestClass.php',
-                'traversablemocktestinterface' => '/_files/TraversableMockTestInterface.php'
+                'interfacewithstaticmethod' => '/_fixture/InterfaceWithStaticMethod.php',
+                'methodcallback' => '/_fixture/MethodCallback.php',
+                'methodcallbackbyreference' => '/_fixture/MethodCallbackByReference.php',
+                'mockable' => '/_fixture/Mockable.php',
+                'partialmocktestclass' => '/_fixture/PartialMockTestClass.php',
+                'someclass' => '/_fixture/SomeClass.php',
+                'staticmocktestclass' => '/_fixture/StaticMockTestClass.php',
+                'traversablemocktestinterface' => '/_fixture/TraversableMockTestInterface.php'
             );
         }
         $cn = strtolower($class);
diff --git a/core/vendor/phpunit/phpunit-mock-objects/tests/bootstrap.php b/core/vendor/phpunit/phpunit-mock-objects/tests/bootstrap.php
index 72b0a5a..39a9c12 100644
--- a/core/vendor/phpunit/phpunit-mock-objects/tests/bootstrap.php
+++ b/core/vendor/phpunit/phpunit-mock-objects/tests/bootstrap.php
@@ -1,5 +1,5 @@
 <?php
 require __DIR__ . '/autoload.php';
-require __DIR__ . '/_files/FunctionCallback.php';
+require __DIR__ . '/_fixture/FunctionCallback.php';
 require __DIR__ . '/../vendor/autoload.php';
 
diff --git a/core/vendor/phpunit/phpunit/.gitignore b/core/vendor/phpunit/phpunit/.gitignore
index 5ec1d53..65a2321 100644
--- a/core/vendor/phpunit/phpunit/.gitignore
+++ b/core/vendor/phpunit/phpunit/.gitignore
@@ -6,6 +6,7 @@ build/pdepend
 build/phar
 build/phpdox
 build/*.phar
+build/*.phar.asc
 tests/TextUI/*.diff
 tests/TextUI/*.exp
 tests/TextUI/*.log
diff --git a/core/vendor/phpunit/phpunit/.travis.yml b/core/vendor/phpunit/phpunit/.travis.yml
index d5ea485..320d708 100644
--- a/core/vendor/phpunit/phpunit/.travis.yml
+++ b/core/vendor/phpunit/phpunit/.travis.yml
@@ -9,13 +9,10 @@ php:
   - hhvm
   - hhvm-nightly
 
-matrix:
-    allow_failures:
-        - php: hhvm
-
 before_script:
   - composer self-update
   - composer install --no-interaction --prefer-source --dev
+  - if [[ "$TRAVIS_PHP_VERSION" == hhvm* ]]; then echo -e '\nhhvm.libxml.ext_entity_whitelist = "file"' | sudo tee -a /etc/hhvm/php.ini; fi
 
 script: ./phpunit --configuration ./build/travis-ci.xml
 
diff --git a/core/vendor/phpunit/phpunit/build.xml b/core/vendor/phpunit/phpunit/build.xml
index 176d07a..7d6befc 100644
--- a/core/vendor/phpunit/phpunit/build.xml
+++ b/core/vendor/phpunit/phpunit/build.xml
@@ -20,6 +20,7 @@
   <delete>
    <fileset dir="${basedir}/build">
     <include name="**/*.phar" />
+    <include name="**/*.phar.asc" />
    </fileset>
   </delete>
  </target>
@@ -152,6 +153,21 @@
   <exec executable="phpdox" />
  </target>
 
+ <target name="signed-phar"
+         description="Create signed PHAR archive of PHPUnit and all its dependencies (release)"
+         depends="phar">
+  <exec executable="bash" outputproperty="version">
+   <arg value="-c" />
+   <arg value="${basedir}/phpunit --version | awk 'BEGIN { ORS = &quot;&quot;; } {print $2}'" />
+  </exec>
+
+  <exec executable="gpg" failonerror="true">
+   <arg value="--armor" />
+   <arg value="--detach-sign" />
+   <arg path="${basedir}/build/phpunit-${version}.phar" />
+  </exec>
+ </target>
+
  <target name="phar"
          description="Create PHAR archive of PHPUnit and all its dependencies (release)"
          depends="phar-prepare">
@@ -196,15 +212,16 @@
   <move file="${basedir}/composer.json.bak" tofile="${basedir}/composer.json"/>
 
   <exec executable="${basedir}/build/phar-manifest.php" output="${basedir}/build/phar/manifest.txt"/>
+  <copy todir="${basedir}/build/phar" file="${basedir}/build/ca.pem" />
 
+  <copy file="${basedir}/vendor/phpunit/php-code-coverage/LICENSE" tofile="${basedir}/build/phar/php-code-coverage/LICENSE"/>
   <copy todir="${basedir}/build/phar/php-code-coverage">
    <fileset dir="${basedir}/vendor/phpunit/php-code-coverage/src">
     <include name="**/*" />
    </fileset>
   </copy>
 
-  <copy todir="${basedir}/build/phar" file="${basedir}/build/ca.pem" />
-
+  <copy file="${basedir}/vendor/phpunit/php-file-iterator/LICENSE" tofile="${basedir}/build/phar/php-file-iterator/LICENSE"/>
   <copy todir="${basedir}/build/phar/php-file-iterator">
    <fileset dir="${basedir}/vendor/phpunit/php-file-iterator/File">
     <include name="**/*.php" />
@@ -212,6 +229,7 @@
    </fileset>
   </copy>
 
+  <copy file="${basedir}/vendor/phpunit/php-text-template/LICENSE" tofile="${basedir}/build/phar/php-text-template/LICENSE"/>
   <copy todir="${basedir}/build/phar/php-text-template">
    <fileset dir="${basedir}/vendor/phpunit/php-text-template/Text">
     <include name="**/*.php" />
@@ -219,6 +237,7 @@
    </fileset>
   </copy>
 
+  <copy file="${basedir}/vendor/phpunit/php-timer/LICENSE" tofile="${basedir}/build/phar/php-timer/LICENSE"/>
   <copy todir="${basedir}/build/phar/php-timer">
    <fileset dir="${basedir}/vendor/phpunit/php-timer/PHP">
     <include name="**/*.php" />
@@ -226,6 +245,7 @@
    </fileset>
   </copy>
 
+  <copy file="${basedir}/vendor/phpunit/php-token-stream/LICENSE" tofile="${basedir}/build/phar/php-token-stream/LICENSE"/>
   <copy todir="${basedir}/build/phar/php-token-stream">
    <fileset dir="${basedir}/vendor/phpunit/php-token-stream/PHP">
     <include name="**/*.php" />
@@ -233,18 +253,21 @@
    </fileset>
   </copy>
 
+  <copy file="${basedir}/vendor/phpunit/phpunit-mock-objects/LICENSE" tofile="${basedir}/build/phar/phpunit-mock-objects/LICENSE"/>
   <copy todir="${basedir}/build/phar/phpunit-mock-objects">
    <fileset dir="${basedir}/vendor/phpunit/phpunit-mock-objects/src">
     <include name="**/*" />
    </fileset>
   </copy>
 
+  <copy file="${basedir}/vendor/sebastian/comparator/LICENSE" tofile="${basedir}/build/phar/sebastian-comparator/LICENSE"/>
   <copy todir="${basedir}/build/phar/sebastian-comparator">
    <fileset dir="${basedir}/vendor/sebastian/comparator/src">
     <include name="**/*.php" />
    </fileset>
   </copy>
 
+  <copy file="${basedir}/vendor/sebastian/diff/LICENSE" tofile="${basedir}/build/phar/sebastian-diff/LICENSE"/>
   <copy todir="${basedir}/build/phar/sebastian-diff">
    <fileset dir="${basedir}/vendor/sebastian/diff/src">
     <include name="**/*.php" />
@@ -252,12 +275,14 @@
    </fileset>
   </copy>
 
+  <copy file="${basedir}/vendor/sebastian/environment/LICENSE" tofile="${basedir}/build/phar/sebastian-environment/LICENSE"/>
   <copy todir="${basedir}/build/phar/sebastian-environment">
    <fileset dir="${basedir}/vendor/sebastian/environment/src">
     <include name="**/*.php" />
    </fileset>
   </copy>
 
+  <copy file="${basedir}/vendor/sebastian/exporter/LICENSE" tofile="${basedir}/build/phar/sebastian-exporter/LICENSE"/>
   <copy todir="${basedir}/build/phar/sebastian-exporter">
    <fileset dir="${basedir}/vendor/sebastian/exporter/src">
     <include name="**/*.php" />
@@ -265,6 +290,7 @@
    </fileset>
   </copy>
 
+  <copy file="${basedir}/vendor/sebastian/version/LICENSE" tofile="${basedir}/build/phar/sebastian-version/LICENSE"/>
   <copy todir="${basedir}/build/phar/sebastian-version">
    <fileset dir="${basedir}/vendor/sebastian/version/src">
     <include name="**/*.php" />
@@ -272,6 +298,7 @@
    </fileset>
   </copy>
 
+  <copy file="${basedir}/vendor/symfony/yaml/Symfony/Component/Yaml/LICENSE" tofile="${basedir}/build/phar/symfony/LICENSE"/>
   <copy todir="${basedir}/build/phar/symfony">
    <fileset dir="${basedir}/vendor/symfony">
     <include name="**/*.php" />
diff --git a/core/vendor/phpunit/phpunit/composer.json b/core/vendor/phpunit/phpunit/composer.json
index bf04caf..a5a94e5 100644
--- a/core/vendor/phpunit/phpunit/composer.json
+++ b/core/vendor/phpunit/phpunit/composer.json
@@ -26,7 +26,7 @@
         "phpunit/php-text-template": "~1.2",
         "phpunit/php-code-coverage": "~2.0",
         "phpunit/php-timer": "~1.0.2",
-        "phpunit/phpunit-mock-objects": "~2.1",
+        "phpunit/phpunit-mock-objects": "2.1.5",
         "symfony/yaml": "~2.0",
         "sebastian/comparator": "~1.0",
         "sebastian/diff": "~1.1",
diff --git a/core/vendor/phpunit/phpunit/src/Framework/TestCase.php b/core/vendor/phpunit/phpunit/src/Framework/TestCase.php
index 6cd8728..2f64102 100755
--- a/core/vendor/phpunit/phpunit/src/Framework/TestCase.php
+++ b/core/vendor/phpunit/phpunit/src/Framework/TestCase.php
@@ -720,11 +720,13 @@ public function run(PHPUnit_Framework_TestResult $result = null)
             }
 
             $data            = var_export(serialize($this->data), true);
+            $dataName        = var_export($this->dataName, true);
             $dependencyInput = var_export(serialize($this->dependencyInput), true);
             $includePath     = var_export(get_include_path(), true);
             // must do these fixes because TestCaseMethod.tpl has unserialize('{data}') in it, and we can't break BC
             // the lines above used to use addcslashes() rather than var_export(), which breaks null byte escape sequences
             $data            = "'." . $data . ".'";
+            $dataName        = "'.(" . $dataName . ").'";
             $dependencyInput = "'." . $dependencyInput . ".'";
             $includePath     = "'." . $includePath . ".'";
 
@@ -737,7 +739,7 @@ public function run(PHPUnit_Framework_TestResult $result = null)
                 'methodName'                              => $this->name,
                 'collectCodeCoverageInformation'          => $coverage,
                 'data'                                    => $data,
-                'dataName'                                => $this->dataName,
+                'dataName'                                => $dataName,
                 'dependencyInput'                         => $dependencyInput,
                 'constants'                               => $constants,
                 'globals'                                 => $globals,
@@ -804,7 +806,9 @@ public function runBare()
         $hookMethods = PHPUnit_Util_Test::getHookMethods(get_class($this));
 
         try {
+            $hasMetRequirements = false;
             $this->checkRequirements();
+            $hasMetRequirements = true;
 
             if ($this->inIsolation) {
                 foreach ($hookMethods['beforeClass'] as $method) {
@@ -843,14 +847,16 @@ public function runBare()
         // Tear down the fixture. An exception raised in tearDown() will be
         // caught and passed on when no exception was raised before.
         try {
-            foreach ($hookMethods['after'] as $method) {
-                $this->$method();
-            }
-
-            if ($this->inIsolation) {
-                foreach ($hookMethods['afterClass'] as $method) {
+            if ($hasMetRequirements) {
+                foreach ($hookMethods['after'] as $method) {
                     $this->$method();
                 }
+
+                if ($this->inIsolation) {
+                    foreach ($hookMethods['afterClass'] as $method) {
+                        $this->$method();
+                    }
+                }
             }
         } catch (Exception $_e) {
             if (!isset($e)) {
diff --git a/core/vendor/phpunit/phpunit/src/Framework/TestSuite.php b/core/vendor/phpunit/phpunit/src/Framework/TestSuite.php
index 03f36cd..fa38ed6 100644
--- a/core/vendor/phpunit/phpunit/src/Framework/TestSuite.php
+++ b/core/vendor/phpunit/phpunit/src/Framework/TestSuite.php
@@ -134,6 +134,11 @@ class PHPUnit_Framework_TestSuite implements PHPUnit_Framework_Test, PHPUnit_Fra
     protected $testCase = false;
 
     /**
+     * @var array
+     */
+    protected $foundClasses = array();
+
+    /**
      * @var PHPUnit_Runner_Filter_Factory
      */
     private $iteratorFilter = null;
@@ -350,21 +355,40 @@ public function addTestFile($filename, $phptOptions = array())
             $this->addTest(
               new PHPUnit_Extensions_PhptTestCase($filename, $phptOptions)
             );
-
             return;
         }
 
+        // The given file may contain further stub classes in addition to the
+        // test class itself. Figure out the actual test class.
         $classes    = get_declared_classes();
         $filename   = PHPUnit_Util_Fileloader::checkAndLoad($filename);
-        $newClasses = array_values(array_diff(get_declared_classes(), $classes));
-        $baseName   = str_replace('.php', '', basename($filename));
-
-        foreach ($newClasses as $className) {
-            if (substr($className, 0 - strlen($baseName)) == $baseName) {
+        $newClasses = array_diff(get_declared_classes(), $classes);
+
+        // The diff is empty in case a parent class (with test methods) is added
+        // AFTER a child class that inherited from it. To account for that case,
+        // cumulate all discovered classes, so the parent class may be found in
+        // a later invocation.
+        if ($newClasses) {
+            // On the assumption that test classes are defined first in files,
+            // process discovered classes in approximate LIFO order, so as to
+            // avoid unnecessary reflection.
+            $this->foundClasses = array_merge($newClasses, $this->foundClasses);
+        }
+
+        // The test class's name must match the filename, either in full, or as
+        // a PEAR/PSR-0 prefixed shortname ('NameSpace_ShortName'), or as a
+        // PSR-1 local shortname ('NameSpace\ShortName'). The comparison must be
+        // anchored to prevent false-positive matches (e.g., 'OtherShortName').
+        $shortname = basename($filename, '.php');
+        $shortnameRegEx = '/(?:^|_|\\\\)' . preg_quote($shortname, '/') . '$/';
+
+        foreach ($this->foundClasses as $i => $className) {
+            if (preg_match($shortnameRegEx, $className)) {
                 $class = new ReflectionClass($className);
 
                 if ($class->getFileName() == $filename) {
                     $newClasses = array($className);
+                    unset($this->foundClasses[$i]);
                     break;
                 }
             }
diff --git a/core/vendor/phpunit/phpunit/src/Runner/Version.php b/core/vendor/phpunit/phpunit/src/Runner/Version.php
index cd39538..7a9c12c 100644
--- a/core/vendor/phpunit/phpunit/src/Runner/Version.php
+++ b/core/vendor/phpunit/phpunit/src/Runner/Version.php
@@ -71,7 +71,7 @@ public static function id()
         }
 
         if (self::$version === null) {
-            $version = new SebastianBergmann\Version('4.1.4', dirname(dirname(__DIR__)));
+            $version = new SebastianBergmann\Version('4.1.6', dirname(dirname(__DIR__)));
             self::$version = $version->getVersion();
         }
 
diff --git a/core/vendor/phpunit/phpunit/src/Util/Blacklist.php b/core/vendor/phpunit/phpunit/src/Util/Blacklist.php
index 40f9788..d767d81 100644
--- a/core/vendor/phpunit/phpunit/src/Util/Blacklist.php
+++ b/core/vendor/phpunit/phpunit/src/Util/Blacklist.php
@@ -136,6 +136,15 @@ private function initialize()
 
                 self::$directories[] = $directory;
             }
+
+            // Hide process isolation workaround on Windows.
+            // @see PHPUnit_Util_PHP::factory()
+            // @see PHPUnit_Util_PHP_Windows::process()
+            if (DIRECTORY_SEPARATOR === '\\') {
+                // tempnam() prefix is limited to first 3 chars.
+                // @see http://php.net/manual/en/function.tempnam.php
+                self::$directories[] = sys_get_temp_dir() . '\\PHP';
+            }
        }
     }
 }
diff --git a/core/vendor/phpunit/phpunit/src/Util/Configuration.php b/core/vendor/phpunit/phpunit/src/Util/Configuration.php
index 844135a..6cbe472 100644
--- a/core/vendor/phpunit/phpunit/src/Util/Configuration.php
+++ b/core/vendor/phpunit/phpunit/src/Util/Configuration.php
@@ -193,7 +193,7 @@ class PHPUnit_Util_Configuration
     protected function __construct($filename)
     {
         $this->filename = $filename;
-        $this->document = PHPUnit_Util_XML::loadFile($filename, false, true);
+        $this->document = PHPUnit_Util_XML::loadFile($filename, false, true, true);
         $this->xpath    = new DOMXPath($this->document);
     }
 
diff --git a/core/vendor/phpunit/phpunit/src/Util/Getopt.php b/core/vendor/phpunit/phpunit/src/Util/Getopt.php
index 0606406..b68a75b 100644
--- a/core/vendor/phpunit/phpunit/src/Util/Getopt.php
+++ b/core/vendor/phpunit/phpunit/src/Util/Getopt.php
@@ -188,7 +188,8 @@ protected static function parseLongOption($arg, $long_options, &$opts, &$args)
                 );
             }
 
-            $opts[] = array('--' . $opt, $opt_arg);
+            $full_option = '--' . preg_replace('/={1,2}$/', '', $long_opt);
+            $opts[] = array($full_option, $opt_arg);
 
             return;
         }
diff --git a/core/vendor/phpunit/phpunit/src/Util/GlobalState.php b/core/vendor/phpunit/phpunit/src/Util/GlobalState.php
index ab7b72b..3cfc199 100644
--- a/core/vendor/phpunit/phpunit/src/Util/GlobalState.php
+++ b/core/vendor/phpunit/phpunit/src/Util/GlobalState.php
@@ -362,10 +362,9 @@ protected static function exportVariable($variable)
            (is_array($variable) && self::arrayOnlyContainsScalars($variable))) {
             return var_export($variable, true);
         }
-
-        return 'unserialize(\'' .
-                str_replace("'", "\'", serialize($variable)) .
-                '\')';
+        return 'unserialize(' .
+                var_export(serialize($variable), true) .
+                ')';
     }
 
     protected static function arrayOnlyContainsScalars(array $array)
diff --git a/core/vendor/phpunit/phpunit/src/Util/PHP.php b/core/vendor/phpunit/phpunit/src/Util/PHP.php
index 95399c0..d3d36a0 100644
--- a/core/vendor/phpunit/phpunit/src/Util/PHP.php
+++ b/core/vendor/phpunit/phpunit/src/Util/PHP.php
@@ -154,7 +154,7 @@ private function processChildResult(PHPUnit_Framework_Test $test, PHPUnit_Framew
 
             if ($childResult !== false) {
                 if (!empty($childResult['output'])) {
-                    print $childResult['output'];
+                    $output = $childResult['output'];
                 }
 
                 $test->setResult($childResult['testResult']);
@@ -200,6 +200,10 @@ private function processChildResult(PHPUnit_Framework_Test $test, PHPUnit_Framew
         }
 
         $result->endTest($test, $time);
+
+        if (!empty($output)) {
+            print $output;
+        }
     }
 
     /**
diff --git a/core/vendor/phpunit/phpunit/src/Util/PHP/Template/TestCaseMethod.tpl.dist b/core/vendor/phpunit/phpunit/src/Util/PHP/Template/TestCaseMethod.tpl.dist
index 8d714b5..b81e9bb 100644
--- a/core/vendor/phpunit/phpunit/src/Util/PHP/Template/TestCaseMethod.tpl.dist
+++ b/core/vendor/phpunit/phpunit/src/Util/PHP/Template/TestCaseMethod.tpl.dist
@@ -36,9 +36,8 @@ function __phpunit_run_isolated_test()
     $test->setInIsolation(TRUE);
 
     ob_end_clean();
-    ob_start();
     $test->run($result);
-    $output = ob_get_clean();
+    $output = $test->getActualOutput();
 
     print serialize(
       array(
diff --git a/core/vendor/phpunit/phpunit/src/Util/PHP/Windows.php b/core/vendor/phpunit/phpunit/src/Util/PHP/Windows.php
index 17d9768..d9b6ffc 100644
--- a/core/vendor/phpunit/phpunit/src/Util/PHP/Windows.php
+++ b/core/vendor/phpunit/phpunit/src/Util/PHP/Windows.php
@@ -43,6 +43,8 @@
  * @since      File available since Release 3.5.12
  */
 
+use SebastianBergmann\Environment\Runtime;
+
 /**
  * Windows utility for PHP sub-processes.
  *
@@ -62,6 +64,57 @@ class PHPUnit_Util_PHP_Windows extends PHPUnit_Util_PHP_Default
     private $tempFile;
 
     /**
+     * {@inheritdoc}
+     *
+     * Reading from STDOUT or STDERR hangs forever on Windows if the output is
+     * too large.
+     *
+     * @see https://bugs.php.net/bug.php?id=51800
+     */
+    public function runJob($job, array $settings = array())
+    {
+        $runtime = new Runtime;
+
+        if (false === $stdout_handle = tmpfile()) {
+            throw new PHPUnit_Framework_Exception(
+              'A temporary file could not be created; verify that your TEMP environment variable is writable'
+            );
+        }
+
+        $process = proc_open(
+          $runtime->getBinary() . $this->settingsToParameters($settings),
+          array(
+            0 => array('pipe', 'r'),
+            1 => $stdout_handle,
+            2 => array('pipe', 'w')
+          ),
+          $pipes
+        );
+
+        if (!is_resource($process)) {
+            throw new PHPUnit_Framework_Exception(
+              'Unable to spawn worker process'
+            );
+        }
+
+        $this->process($pipes[0], $job);
+        fclose($pipes[0]);
+
+        $stderr = stream_get_contents($pipes[2]);
+        fclose($pipes[2]);
+
+        proc_close($process);
+
+        rewind($stdout_handle);
+        $stdout = stream_get_contents($stdout_handle);
+        fclose($stdout_handle);
+
+        $this->cleanup();
+
+        return array('stdout' => $stdout, 'stderr' => $stderr);
+    }
+
+    /**
      * @param  resource                    $pipe
      * @param  string                      $job
      * @throws PHPUnit_Framework_Exception
diff --git a/core/vendor/phpunit/phpunit/src/Util/XML.php b/core/vendor/phpunit/phpunit/src/Util/XML.php
index e4ac534..13d38bc 100644
--- a/core/vendor/phpunit/phpunit/src/Util/XML.php
+++ b/core/vendor/phpunit/phpunit/src/Util/XML.php
@@ -84,10 +84,11 @@ public static function prepareString($string)
      * @param  string      $filename
      * @param  boolean     $isHtml
      * @param  boolean     $xinclude
+     * @param  boolean     $strict
      * @return DOMDocument
      * @since  Method available since Release 3.3.0
      */
-    public static function loadFile($filename, $isHtml = false, $xinclude = false)
+    public static function loadFile($filename, $isHtml = false, $xinclude = false, $strict = false)
     {
         $reporting = error_reporting(0);
         $contents  = file_get_contents($filename);
@@ -102,7 +103,7 @@ public static function loadFile($filename, $isHtml = false, $xinclude = false)
             );
         }
 
-        return self::load($contents, $isHtml, $filename, $xinclude);
+        return self::load($contents, $isHtml, $filename, $xinclude, $strict);
     }
 
     /**
@@ -123,48 +124,59 @@ public static function loadFile($filename, $isHtml = false, $xinclude = false)
      * @param  boolean            $isHtml
      * @param  string             $filename
      * @param  boolean            $xinclude
+     * @param  boolean            $strict
      * @return DOMDocument
      * @since  Method available since Release 3.3.0
      * @author Mike Naberezny <mike@maintainable.com>
      * @author Derek DeVries <derek@maintainable.com>
      * @author Tobias Schlitt <toby@php.net>
      */
-    public static function load($actual, $isHtml = false, $filename = '', $xinclude = false)
+    public static function load($actual, $isHtml = false, $filename = '', $xinclude = false, $strict = false)
     {
         if ($actual instanceof DOMDocument) {
             return $actual;
         }
 
+        // Required for XInclude on Windows.
+        if ($xinclude) {
+            $cwd = getcwd();
+            chdir(dirname($filename));
+        }
+
         $document  = new DOMDocument;
 
         $internal  = libxml_use_internal_errors(true);
         $message   = '';
         $reporting = error_reporting(0);
 
+        if ('' !== $filename) {
+            // Necessary for xinclude
+            $document->documentURI = $filename;
+        }
+
         if ($isHtml) {
             $loaded = $document->loadHTML($actual);
         } else {
             $loaded = $document->loadXML($actual);
         }
 
-        if ('' !== $filename) {
-            // Necessary for xinclude
-            $document->documentURI = $filename;
-        }
-
         if (!$isHtml && $xinclude) {
             $document->xinclude();
         }
 
         foreach (libxml_get_errors() as $error) {
-            $message .= $error->message;
+            $message .= "\n" . $error->message;
         }
 
         libxml_use_internal_errors($internal);
         error_reporting($reporting);
 
-        if ($loaded === false) {
-            if ($filename != '') {
+        if ($xinclude) {
+            chdir($cwd);
+        }
+
+        if ($loaded === false || ($strict && $message !== '')) {
+            if ($filename !== '') {
                 throw new PHPUnit_Framework_Exception(
                   sprintf(
                     'Could not load "%s".%s',
diff --git a/core/vendor/phpunit/phpunit/tests/Framework/SelectorAssertionsTest.php b/core/vendor/phpunit/phpunit/tests/Framework/SelectorAssertionsTest.php
index 17a2083..fa0c5be 100644
--- a/core/vendor/phpunit/phpunit/tests/Framework/SelectorAssertionsTest.php
+++ b/core/vendor/phpunit/phpunit/tests/Framework/SelectorAssertionsTest.php
@@ -656,6 +656,27 @@ public function testAssertChildrenContentAttributes()
     }
 
     /**
+     * @covers PHPUnit_Framework_Assert::assertTag
+     * @ticket 1380
+     */
+    public function testAssertTagWithMalformedHTML()
+    {
+        $matcher = array(
+            'tag' => 'form',
+            'descendant' => array(
+                'tag' => 'input',
+                'attributes' => array(
+                    'name' => 'property',
+                    'value' => 'Foo'
+                )
+            )
+        );
+
+        $html = '<form><input name="property" value="Foo"><hr></hr></form>';
+        $this->assertTag($matcher, $html);
+    }
+
+    /**
      * @covers PHPUnit_Framework_Assert::assertNotTag
      */
     public function testAssertNotTagTypeIdFalse()
diff --git a/core/vendor/phpunit/phpunit/tests/Framework/SuiteTest.php b/core/vendor/phpunit/phpunit/tests/Framework/SuiteTest.php
index 61e141c..390d612 100644
--- a/core/vendor/phpunit/phpunit/tests/Framework/SuiteTest.php
+++ b/core/vendor/phpunit/phpunit/tests/Framework/SuiteTest.php
@@ -85,6 +85,7 @@ public static function suite()
         $suite->addTest(new Framework_SuiteTest('testShadowedTests'));
         $suite->addTest(new Framework_SuiteTest('testBeforeClassAndAfterClassAnnotations'));
         $suite->addTest(new Framework_SuiteTest('testBeforeAnnotation'));
+        $suite->addTest(new Framework_SuiteTest('testDontSkipInheritedClass'));
 
         return $suite;
     }
@@ -213,4 +214,19 @@ public function testBeforeAnnotation()
         $this->assertEquals(2, BeforeAndAfterTest::$afterWasRun);
     }
 
+    public function testDontSkipInheritedClass()
+    {
+        $suite = new PHPUnit_Framework_TestSuite(
+          'DontSkipInheritedClass'
+        );
+
+        $dir = dirname(__DIR__) . DIRECTORY_SEPARATOR . '_files' . DIRECTORY_SEPARATOR . 'Inheritance' . DIRECTORY_SEPARATOR;
+
+        $suite->addTestFile($dir.'InheritanceA.php');
+        $suite->addTestFile($dir.'InheritanceB.php');
+        $result = $suite->run();
+        $this->assertEquals(2, count($result));
+
+    }
+
 }
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/578.phpt b/core/vendor/phpunit/phpunit/tests/Regression/578.phpt
index dfbf855..4a4d3e0 100644
--- a/core/vendor/phpunit/phpunit/tests/Regression/578.phpt
+++ b/core/vendor/phpunit/phpunit/tests/Regression/578.phpt
@@ -21,17 +21,17 @@ There were 3 errors:
 1) Issue578Test::testNoticesDoublePrintStackTrace
 Invalid error type specified
 
-%s/Issue578Test.php:%i
+%sIssue578Test.php:%i
 
 2) Issue578Test::testWarningsDoublePrintStackTrace
 Invalid error type specified
 
-%s/Issue578Test.php:%i
+%sIssue578Test.php:%i
 
 3) Issue578Test::testUnexpectedExceptionsPrintsCorrectly
 Exception: Double printed exception
 
-%s/Issue578Test.php:%i
+%sIssue578Test.php:%i
 
 FAILURES!
 Tests: 3, Assertions: 0, Errors: 3.
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1149.phpt b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1149.phpt
new file mode 100644
index 0000000..7d9dfcf
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1149.phpt
@@ -0,0 +1,20 @@
+--TEST--
+GH-1149: Test swallows output buffer when run in a separate process
+--FILE--
+<?php
+
+$_SERVER['argv'][1] = '--no-configuration';
+$_SERVER['argv'][2] = 'Issue1149Test';
+$_SERVER['argv'][3] = dirname(__FILE__).'/1149/Issue1149Test.php';
+
+require __DIR__ . '/../../bootstrap.php';
+PHPUnit_TextUI_Command::main();
+?>
+--EXPECTF--
+PHPUnit %s by Sebastian Bergmann.
+
+.1.2
+
+Time: %s, Memory: %sMb
+
+OK (2 tests, 2 assertions)
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1149/Issue1149Test.php b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1149/Issue1149Test.php
new file mode 100644
index 0000000..01ac870
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1149/Issue1149Test.php
@@ -0,0 +1,18 @@
+<?php
+class Issue1149Test extends PHPUnit_Framework_TestCase
+{
+    public function testOne()
+    {
+        $this->assertTrue(true);
+        print '1';
+    }
+
+    /**
+     * @runInSeparateProcess
+     */
+    public function testTwo()
+    {
+        $this->assertTrue(true);
+        print '2';
+    }
+}
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1330.phpt b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1330.phpt
new file mode 100644
index 0000000..af02df1
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1330.phpt
@@ -0,0 +1,26 @@
+--TEST--
+GH-1330: Allow non-ambiguous shortened longopts
+--FILE--
+<?php
+
+$_SERVER['argv'][1] = '--deb';
+$_SERVER['argv'][2] = '--config';
+$_SERVER['argv'][3] = dirname(__FILE__).'/1330/phpunit1330.xml';
+$_SERVER['argv'][4] = 'Issue1330Test';
+$_SERVER['argv'][5] = dirname(__FILE__).'/1330/Issue1330Test.php';
+
+require __DIR__ . '/../../bootstrap.php';
+PHPUnit_TextUI_Command::main();
+?>
+--EXPECTF--
+PHPUnit %s by Sebastian Bergmann.
+
+Configuration read from %s
+
+
+Starting test 'Issue1330Test::testTrue'.
+.
+
+Time: %s, Memory: %sMb
+
+OK (1 test, 1 assertion)
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1330/Issue1330Test.php b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1330/Issue1330Test.php
new file mode 100644
index 0000000..0829cb9
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1330/Issue1330Test.php
@@ -0,0 +1,8 @@
+<?php
+class Issue1330Test extends PHPUnit_Framework_TestCase
+{
+    public function testTrue()
+    {
+        $this->assertTrue(PHPUNIT_1330);
+    }
+}
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1330/phpunit1330.xml b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1330/phpunit1330.xml
new file mode 100644
index 0000000..a61e0cc
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1330/phpunit1330.xml
@@ -0,0 +1,5 @@
+<phpunit>
+  <php>
+    <const name="PHPUNIT_1330" value="true"/>
+  </php>
+</phpunit>
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1335.phpt b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1335.phpt
new file mode 100644
index 0000000..de467f6
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1335.phpt
@@ -0,0 +1,21 @@
+--TEST--
+GH-1335: exportVariable multiple backslash problem
+--FILE--
+<?php
+
+$_SERVER['argv'][1] = '--no-configuration';
+$_SERVER['argv'][2] = '--bootstrap';
+$_SERVER['argv'][3] = dirname(__FILE__).'/1335/bootstrap1335.php';
+$_SERVER['argv'][4] = dirname(__FILE__).'/1335/Issue1335Test.php';
+
+require __DIR__ . '/../../bootstrap.php';
+PHPUnit_TextUI_Command::main();
+?>
+--EXPECTF--
+PHPUnit %s by Sebastian Bergmann.
+
+............
+
+Time: %s, Memory: %sMb
+
+OK (12 tests, 12 assertions)
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1335/Issue1335Test.php b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1335/Issue1335Test.php
new file mode 100644
index 0000000..307ef66
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1335/Issue1335Test.php
@@ -0,0 +1,67 @@
+<?php
+/**
+ * @runTestsInSeparateProcesses
+ * @preserveGlobalState enabled
+ */
+class Issue1335Test extends PHPUnit_Framework_TestCase
+{
+    function testGlobalString()
+    {
+        $this->assertEquals("Hello", $GLOBALS['globalString']);
+    }
+
+    function testGlobalIntTruthy()
+    {
+        $this->assertEquals(1, $GLOBALS['globalIntTruthy']);
+    }
+
+    function testGlobalIntFalsey()
+    {
+        $this->assertEquals(0, $GLOBALS['globalIntFalsey']);
+    }
+
+    function testGlobalFloat()
+    {
+        $this->assertEquals(1.123, $GLOBALS['globalFloat']);
+    }
+
+    function testGlobalBoolTrue()
+    {
+        $this->assertEquals(true, $GLOBALS['globalBoolTrue']);
+    }
+
+    function testGlobalBoolFalse()
+    {
+        $this->assertEquals(false, $GLOBALS['globalBoolFalse']);
+    }
+
+    function testGlobalNull()
+    {
+        $this->assertEquals(null, $GLOBALS['globalNull']);
+    }
+
+    function testGlobalArray()
+    {
+        $this->assertEquals(array("foo"), $GLOBALS['globalArray']);
+    }
+
+    function testGlobalNestedArray()
+    {
+        $this->assertEquals(array(array("foo")), $GLOBALS['globalNestedArray']);
+    }
+
+    function testGlobalObject()
+    {
+        $this->assertEquals((object)array("foo"=>"bar"), $GLOBALS['globalObject']);
+    }
+
+    function testGlobalObjectWithBackSlashString()
+    {
+        $this->assertEquals((object)array("foo"=>"back\\slash"), $GLOBALS['globalObjectWithBackSlashString']);
+    }
+
+    function testGlobalObjectWithDoubleBackSlashString()
+    {
+        $this->assertEquals((object)array("foo"=>"back\\\\slash"), $GLOBALS['globalObjectWithDoubleBackSlashString']);
+    }
+}
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1335/bootstrap1335.php b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1335/bootstrap1335.php
new file mode 100644
index 0000000..6435677
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1335/bootstrap1335.php
@@ -0,0 +1,13 @@
+<?php
+$globalString = "Hello";
+$globalIntTruthy = 1;
+$globalIntFalsey = 0;
+$globalFloat = 1.123;
+$globalBoolTrue = true;
+$globalBoolFalse = false;
+$globalNull = null;
+$globalArray = array("foo");
+$globalNestedArray = array(array("foo"));
+$globalObject = (object)array("foo"=>"bar");
+$globalObjectWithBackSlashString = (object)array("foo"=>"back\\slash");
+$globalObjectWithDoubleBackSlashString = (object)array("foo"=>"back\\\\slash");
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1337.phpt b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1337.phpt
new file mode 100644
index 0000000..17ee08e
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1337.phpt
@@ -0,0 +1,21 @@
+--TEST--
+GH-1337: Data Provider with \ at the end of the name breaks with process isolation
+--FILE--
+<?php
+
+$_SERVER['argv'][1] = '--no-configuration';
+$_SERVER['argv'][2] = '--process-isolation';
+$_SERVER['argv'][3] = 'Issue1337Test';
+$_SERVER['argv'][4] = dirname(__FILE__).'/1337/Issue1337Test.php';
+
+require __DIR__ . '/../../bootstrap.php';
+PHPUnit_TextUI_Command::main();
+?>
+--EXPECTF--
+PHPUnit %s by Sebastian Bergmann.
+
+..
+
+Time: %s, Memory: %sMb
+
+OK (2 tests, 2 assertions)
\ No newline at end of file
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1337/Issue1337Test.php b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1337/Issue1337Test.php
new file mode 100644
index 0000000..44a2fce
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1337/Issue1337Test.php
@@ -0,0 +1,19 @@
+<?php
+class Issue1337Test extends PHPUnit_Framework_TestCase
+{
+    /**
+     * @dataProvider dataProvider
+     */
+    public function testProvider($a)
+    {
+        $this->assertTrue($a);
+    }
+
+    public function dataProvider()
+    {
+        return array(
+          'c:\\'=>array(true),
+          0.9=>array(true)
+        );
+    }
+}
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1340.phpt b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1340.phpt
new file mode 100644
index 0000000..4e1cd1f
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1340.phpt
@@ -0,0 +1,34 @@
+--TEST--
+GH-1340: Process isolation blocks infinitely upon fatal error
+--FILE--
+<?php
+
+$_SERVER['argv'][1] = '--no-configuration';
+$_SERVER['argv'][3] = 'Issue1340Test';
+$_SERVER['argv'][4] = dirname(__FILE__).'/1340/Issue1340Test.php';
+
+require __DIR__ . '/../../bootstrap.php';
+PHPUnit_TextUI_Command::main();
+?>
+--EXPECTF--
+PHPUnit %s by Sebastian Bergmann.
+%A
+.E.EE
+
+Time: %s, Memory: %sMb
+
+There were 3 errors:
+
+1) Issue1340Test::testLargeStderrOutputDoesNotBlockInIsolation
+PHPUnit_Framework_Exception: testLargeStderrOutputDoesNotBlockInIsolation: stderr:%d
+%A
+2) Issue1340Test::testPhpNoticeWithStderrOutputIsAnError
+PHPUnit_Framework_Exception: shutdown: stderr:%d
+%A
+3) Issue1340Test::testFatalErrorDoesNotPass
+PHPUnit_Framework_Exception: Fatal error: Call to undefined function undefined_function() in %s on line %d
+%A
+shutdown: stderr:%d
+%A
+FAILURES!
+Tests: 5, Assertions: 3, Errors: 3.
\ No newline at end of file
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1340/Issue1340Test.php b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1340/Issue1340Test.php
new file mode 100644
index 0000000..580d98a
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1340/Issue1340Test.php
@@ -0,0 +1,69 @@
+<?php
+/**
+ * @see https://bugs.php.net/bug.php?id=51800
+ */
+class Issue1340Test extends PHPUnit_Framework_TestCase
+{
+    private static function get4KB()
+    {
+        return str_repeat('1', 4096 + 1);
+    }
+
+    /**
+     * Also fails despite no isolation, because a phpt test is executed in
+     * subprocess on its own.
+     */
+    public function testLargeStderrOutputDoesNotBlock()
+    {
+        // STDERR of a phpt test is not caught/validated at this point, so this
+        // error output does not cause this test to fail.
+        // @see https://github.com/sebastianbergmann/phpunit/issues/1169
+        error_log("\n" . __FUNCTION__ . ": stderr:" . self::get4KB() . "\n");
+        $this->assertTrue(true);
+    }
+
+    /**
+     * @runInSeparateProcess
+     */
+    public function testLargeStderrOutputDoesNotBlockInIsolation()
+    {
+        error_log("\n" . __FUNCTION__ . ": stderr:" . self::get4KB() . "\n");
+        $this->assertTrue(true);
+    }
+
+    /**
+     * @runInSeparateProcess
+     * @expectedException \PHPUnit_Framework_Error_Notice
+     * @expectedExceptionMessage Undefined variable: foo
+     */
+    public function testPhpNoticeIsCaught()
+    {
+        $bar = $foo['foo'];
+    }
+
+    /**
+     * @runInSeparateProcess
+     * @expectedException \PHPUnit_Framework_Error_Notice
+     * @expectedExceptionMessage Undefined variable: foo
+     */
+    public function testPhpNoticeWithStderrOutputIsAnError()
+    {
+        register_shutdown_function(__CLASS__ . '::onShutdown');
+        $bar = $foo['foo'];
+    }
+
+    /**
+     * @runInSeparateProcess
+     */
+    public function testFatalErrorDoesNotPass()
+    {
+        register_shutdown_function(__CLASS__ . '::onShutdown');
+        $undefined = 'undefined_function';
+        $undefined();
+    }
+
+    public static function onShutdown() {
+        echo "\nshutdown: stdout:", self::get4KB(), "\n";
+        error_log("\nshutdown: stderr:" . self::get4KB());
+    }
+}
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1374.phpt b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1374.phpt
new file mode 100644
index 0000000..9ec7e3c
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1374.phpt
@@ -0,0 +1,21 @@
+--TEST--
+GH-1374: tearDown() is called despite unmet requirements
+--FILE--
+<?php
+
+$_SERVER['argv'][1] = '--no-configuration';
+$_SERVER['argv'][2] = 'Issue1374Test';
+$_SERVER['argv'][3] = dirname(__FILE__).'/1374/Issue1374Test.php';
+
+require __DIR__ . '/../../bootstrap.php';
+PHPUnit_TextUI_Command::main();
+?>
+--EXPECTF--
+PHPUnit %s by Sebastian Bergmann.
+
+S
+
+Time: %s, Memory: %sMb
+
+OK, but incomplete, skipped, or risky tests!
+Tests: 1, Assertions: 0, Skipped: 1.
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1374/Issue1374Test.php b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1374/Issue1374Test.php
new file mode 100644
index 0000000..ad6a3bf
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/1374/Issue1374Test.php
@@ -0,0 +1,21 @@
+<?php
+/**
+ * @requires extension I_DO_NOT_EXIST
+ */
+class Issue1374Test extends PHPUnit_Framework_TestCase
+{
+    protected function setUp()
+    {
+        print __FUNCTION__;
+    }
+
+    public function testSomething()
+    {
+        $this->fail('This should not be reached');
+    }
+
+    protected function tearDown()
+    {
+        print __FUNCTION__;
+    }
+}
diff --git a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/74.phpt b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/74.phpt
index 79b33a4..7005b41 100644
--- a/core/vendor/phpunit/phpunit/tests/Regression/GitHub/74.phpt
+++ b/core/vendor/phpunit/phpunit/tests/Regression/GitHub/74.phpt
@@ -22,7 +22,7 @@ There was 1 error:
 1) Issue74Test::testCreateAndThrowNewExceptionInProcessIsolation
 NewException: Testing GH-74
 
-%s/tests/Regression/GitHub/74/Issue74Test.php:7
+%sIssue74Test.php:7
 
 FAILURES!
 Tests: 1, Assertions: 0, Errors: 1.
diff --git a/core/vendor/phpunit/phpunit/tests/TextUI/custom-printer-debug.phpt b/core/vendor/phpunit/phpunit/tests/TextUI/custom-printer-debug.phpt
index a73d0ac..fcbd3a4 100644
--- a/core/vendor/phpunit/phpunit/tests/TextUI/custom-printer-debug.phpt
+++ b/core/vendor/phpunit/phpunit/tests/TextUI/custom-printer-debug.phpt
@@ -14,7 +14,7 @@ PHPUnit_TextUI_Command::main();
 --EXPECTF--
 PHPUnit %s by Sebastian Bergmann.
 
-Configuration read from %s/configuration.custom-printer.xml
+Configuration read from %sconfiguration.custom-printer.xml
 
 
 Starting test 'BankAccountTest::testBalanceIsInitiallyZero'.
diff --git a/core/vendor/phpunit/phpunit/tests/TextUI/custom-printer-verbose.phpt b/core/vendor/phpunit/phpunit/tests/TextUI/custom-printer-verbose.phpt
index 4528e39..fc5f9f4 100644
--- a/core/vendor/phpunit/phpunit/tests/TextUI/custom-printer-verbose.phpt
+++ b/core/vendor/phpunit/phpunit/tests/TextUI/custom-printer-verbose.phpt
@@ -14,7 +14,7 @@ PHPUnit_TextUI_Command::main();
 --EXPECTF--
 PHPUnit %s by Sebastian Bergmann.
 
-Configuration read from %s/configuration.custom-printer.xml
+Configuration read from %sconfiguration.custom-printer.xml
 
 I
 
diff --git a/core/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml-isolation.phpt b/core/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml-isolation.phpt
index bb8c55f..5154f42 100644
--- a/core/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml-isolation.phpt
+++ b/core/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml-isolation.phpt
@@ -17,7 +17,7 @@ PHPUnit %s by Sebastian Bergmann.
 
 ..F.<?xml version="1.0" encoding="UTF-8"?>
 <testsuites>
-  <testsuite name="DataProviderTest" file="%s/DataProviderTest.php" tests="4" assertions="4" failures="1" errors="0" time="%f">
+  <testsuite name="DataProviderTest" file="%sDataProviderTest.php" tests="4" assertions="4" failures="1" errors="0" time="%f">
     <testsuite name="DataProviderTest::testAdd" tests="4" assertions="4" failures="1" errors="0" time="%f">
       <testcase name="testAdd with data set #0" assertions="1" time="%f"/>
       <testcase name="testAdd with data set #1" assertions="1" time="%f"/>
diff --git a/core/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml.phpt b/core/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml.phpt
index fa7287c..9854e2f 100644
--- a/core/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml.phpt
+++ b/core/vendor/phpunit/phpunit/tests/TextUI/dataprovider-log-xml.phpt
@@ -16,7 +16,7 @@ PHPUnit %s by Sebastian Bergmann.
 
 ..F.<?xml version="1.0" encoding="UTF-8"?>
 <testsuites>
-  <testsuite name="DataProviderTest" file="%s/DataProviderTest.php" tests="4" assertions="4" failures="1" errors="0" time="%f">
+  <testsuite name="DataProviderTest" file="%sDataProviderTest.php" tests="4" assertions="4" failures="1" errors="0" time="%f">
     <testsuite name="DataProviderTest::testAdd" tests="4" assertions="4" failures="1" errors="0" time="%f">
       <testcase name="testAdd with data set #0" assertions="1" time="%f"/>
       <testcase name="testAdd with data set #1" assertions="1" time="%f"/>
diff --git a/core/vendor/phpunit/phpunit/tests/_files/Inheritance/InheritanceA.php b/core/vendor/phpunit/phpunit/tests/_files/Inheritance/InheritanceA.php
new file mode 100644
index 0000000..2dd4c44
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/_files/Inheritance/InheritanceA.php
@@ -0,0 +1,8 @@
+<?php
+
+require_once(__DIR__.'/InheritanceB.php');
+
+class InheritanceA extends InheritanceB
+{
+
+}
diff --git a/core/vendor/phpunit/phpunit/tests/_files/Inheritance/InheritanceB.php b/core/vendor/phpunit/phpunit/tests/_files/Inheritance/InheritanceB.php
new file mode 100644
index 0000000..b7d4a50
--- /dev/null
+++ b/core/vendor/phpunit/phpunit/tests/_files/Inheritance/InheritanceB.php
@@ -0,0 +1,9 @@
+<?php
+
+class InheritanceB extends PHPUnit_Framework_TestCase
+{
+    public function testSomething()
+    {
+
+    }
+}
diff --git a/core/vendor/sebastian/environment/composer.json b/core/vendor/sebastian/environment/composer.json
index 3625eca..15d8188 100644
--- a/core/vendor/sebastian/environment/composer.json
+++ b/core/vendor/sebastian/environment/composer.json
@@ -23,7 +23,7 @@
     },
     "extra": {
         "branch-alias": {
-            "dev-master": "1.1.x-dev"
+            "dev-master": "1.2.x-dev"
         }
     }
 }
diff --git a/core/vendor/sebastian/environment/src/Console.php b/core/vendor/sebastian/environment/src/Console.php
index 38b3ba0..3c7b7f9 100644
--- a/core/vendor/sebastian/environment/src/Console.php
+++ b/core/vendor/sebastian/environment/src/Console.php
@@ -68,4 +68,28 @@ public function hasColorSupport()
 
         return function_exists('posix_isatty') && @posix_isatty(STDOUT);
     }
+
+    /**
+     * Returns the number of columns of the terminal.
+     *
+     * @return integer
+     */
+    public function getNumberOfColumns()
+    {
+        // Windows terminals have a fixed size of 80
+        // but one column is used for the cursor.
+        if (DIRECTORY_SEPARATOR == '\\') {
+            return 79;
+        }
+
+        if (preg_match('#\d+ (\d+)#', shell_exec('stty size'), $match) === 1) {
+            return (int) $match[1];
+        }
+
+        if (preg_match('#columns = (\d+);#', shell_exec('stty'), $match) === 1) {
+            return (int) $match[1];
+        }
+
+        return 80;
+    }
 }
diff --git a/core/vendor/sebastian/environment/tests/ConsoleTest.php b/core/vendor/sebastian/environment/tests/ConsoleTest.php
index 0ac7a0b..cb80a62 100644
--- a/core/vendor/sebastian/environment/tests/ConsoleTest.php
+++ b/core/vendor/sebastian/environment/tests/ConsoleTest.php
@@ -62,6 +62,14 @@ protected function setUp()
      */
     public function testCanDetectColorSupport()
     {
-        $this->assertTrue($this->console->hasColorSupport());
+        $this->assertInternalType('boolean', $this->console->hasColorSupport());
+    }
+
+    /**
+     * @covers \SebastianBergmann\Environment\Console::hasColorSupport
+     */
+    public function testCanDetectNumberOfColumns()
+    {
+        $this->assertInternalType('integer', $this->console->getNumberOfColumns());
     }
 }
diff --git a/core/vendor/stack/builder/.gitignore b/core/vendor/stack/builder/.gitignore
new file mode 100644
index 0000000..22d0d82
--- /dev/null
+++ b/core/vendor/stack/builder/.gitignore
@@ -0,0 +1 @@
+vendor
diff --git a/core/vendor/symfony-cmf/routing/.gitignore b/core/vendor/symfony-cmf/routing/.gitignore
new file mode 100644
index 0000000..c089b09
--- /dev/null
+++ b/core/vendor/symfony-cmf/routing/.gitignore
@@ -0,0 +1,3 @@
+phpunit.xml
+composer.lock
+/vendor/
diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/README.md b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/README.md
index fc222b1..3c78504 100644
--- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/README.md
+++ b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/README.md
@@ -9,51 +9,63 @@ standard or the PEAR naming convention.
 
 First, register the autoloader:
 
-    require_once __DIR__.'/src/Symfony/Component/ClassLoader/UniversalClassLoader.php';
+```php
+require_once __DIR__.'/src/Symfony/Component/ClassLoader/UniversalClassLoader.php';
 
-    use Symfony\Component\ClassLoader\UniversalClassLoader;
+use Symfony\Component\ClassLoader\UniversalClassLoader;
 
-    $loader = new UniversalClassLoader();
-    $loader->register();
+$loader = new UniversalClassLoader();
+$loader->register();
+```
 
 Then, register some namespaces with the `registerNamespace()` method:
 
-    $loader->registerNamespace('Symfony', __DIR__.'/src');
-    $loader->registerNamespace('Monolog', __DIR__.'/vendor/monolog/src');
+```php
+$loader->registerNamespace('Symfony', __DIR__.'/src');
+$loader->registerNamespace('Monolog', __DIR__.'/vendor/monolog/src');
+```
 
 The `registerNamespace()` method takes a namespace prefix and a path where to
 look for the classes as arguments.
 
 You can also register a sub-namespaces:
 
-    $loader->registerNamespace('Doctrine\\Common', __DIR__.'/vendor/doctrine-common/lib');
+```php
+$loader->registerNamespace('Doctrine\\Common', __DIR__.'/vendor/doctrine-common/lib');
+```
 
 The order of registration is significant and the first registered namespace
 takes precedence over later registered one.
 
 You can also register more than one path for a given namespace:
 
-    $loader->registerNamespace('Symfony', array(__DIR__.'/src', __DIR__.'/symfony/src'));
+```php
+$loader->registerNamespace('Symfony', array(__DIR__.'/src', __DIR__.'/symfony/src'));
+```
 
 Alternatively, you can use the `registerNamespaces()` method to register more
 than one namespace at once:
 
-    $loader->registerNamespaces(array(
-        'Symfony'          => array(__DIR__.'/src', __DIR__.'/symfony/src'),
-        'Doctrine\\Common' => __DIR__.'/vendor/doctrine-common/lib',
-        'Doctrine'         => __DIR__.'/vendor/doctrine/lib',
-        'Monolog'          => __DIR__.'/vendor/monolog/src',
-    ));
+```php
+$loader->registerNamespaces(array(
+    'Symfony'          => array(__DIR__.'/src', __DIR__.'/symfony/src'),
+    'Doctrine\\Common' => __DIR__.'/vendor/doctrine-common/lib',
+    'Doctrine'         => __DIR__.'/vendor/doctrine/lib',
+    'Monolog'          => __DIR__.'/vendor/monolog/src',
+));
+```
 
 For better performance, you can use the APC based version of the universal
 class loader:
 
-    require_once __DIR__.'/src/Symfony/Component/ClassLoader/UniversalClassLoader.php';
-    require_once __DIR__.'/src/Symfony/Component/ClassLoader/ApcUniversalClassLoader.php';
+```php
+require_once __DIR__.'/src/Symfony/Component/ClassLoader/UniversalClassLoader.php';
+require_once __DIR__.'/src/Symfony/Component/ClassLoader/ApcUniversalClassLoader.php';
 
-    use Symfony\Component\ClassLoader\ApcUniversalClassLoader;
+use Symfony\Component\ClassLoader\ApcUniversalClassLoader;
 
-    $loader = new ApcUniversalClassLoader('apc.prefix.');
+$loader = new ApcUniversalClassLoader('apc.prefix.');
+```
 
 Furthermore, the component provides tools to aggregate classes into a single
 file, which is especially useful to improve performance on servers that do not
diff --git a/core/vendor/symfony/css-selector/Symfony/Component/CssSelector/README.md b/core/vendor/symfony/css-selector/Symfony/Component/CssSelector/README.md
index fae1d4b..e0212b1 100644
--- a/core/vendor/symfony/css-selector/Symfony/Component/CssSelector/README.md
+++ b/core/vendor/symfony/css-selector/Symfony/Component/CssSelector/README.md
@@ -6,9 +6,11 @@ CssSelector converts CSS selectors to XPath expressions.
 The component only goal is to convert CSS selectors to their XPath
 equivalents:
 
-    use Symfony\Component\CssSelector\CssSelector;
+```php
+use Symfony\Component\CssSelector\CssSelector;
 
-    print CssSelector::toXPath('div.item > h4 > a');
+print CssSelector::toXPath('div.item > h4 > a');
+```
 
 HTML and XML are different
 --------------------------
@@ -18,11 +20,13 @@ default. If you need to use this component with `XML` documents, you have to
 disable this `HTML` extension. That's because, `HTML` tag & attribute names
 are always lower-cased, but case-sensitive in `XML`:
 
-    // disable `HTML` extension:
-    CssSelector::disableHtmlExtension();
+```php
+// disable `HTML` extension:
+CssSelector::disableHtmlExtension();
 
-    // re-enable `HTML` extension:
-    CssSelector::enableHtmlExtension();
+// re-enable `HTML` extension:
+CssSelector::enableHtmlExtension();
+```
 
 When the `HTML` extension is enabled, tag names are lower-cased, attribute
 names are lower-cased, the following extra pseudo-classes are supported:
diff --git a/core/vendor/symfony/css-selector/Symfony/Component/CssSelector/XPath/Translator.php b/core/vendor/symfony/css-selector/Symfony/Component/CssSelector/XPath/Translator.php
index 4676677..5675aa6 100644
--- a/core/vendor/symfony/css-selector/Symfony/Component/CssSelector/XPath/Translator.php
+++ b/core/vendor/symfony/css-selector/Symfony/Component/CssSelector/XPath/Translator.php
@@ -123,17 +123,15 @@ public function cssToXPath($cssExpr, $prefix = 'descendant-or-self::')
         $selectors = $this->parseSelectors($cssExpr);
 
         /** @var SelectorNode $selector */
-        foreach ($selectors as $selector) {
+        foreach ($selectors as $index => $selector) {
             if (null !== $selector->getPseudoElement()) {
                 throw new ExpressionErrorException('Pseudo-elements are not supported.');
             }
-        }
 
-        $translator = $this;
+            $selectors[$index] = $this->selectorToXPath($selector, $prefix);
+        }
 
-        return implode(' | ', array_map(function (SelectorNode $selector) use ($translator, $prefix) {
-            return $translator->selectorToXPath($selector, $prefix);
-        }, $selectors));
+        return implode(' | ', $selectors);
     }
 
     /**
diff --git a/core/vendor/symfony/debug/Symfony/Component/Debug/ExceptionHandler.php b/core/vendor/symfony/debug/Symfony/Component/Debug/ExceptionHandler.php
index 6c12979..e575abf 100644
--- a/core/vendor/symfony/debug/Symfony/Component/Debug/ExceptionHandler.php
+++ b/core/vendor/symfony/debug/Symfony/Component/Debug/ExceptionHandler.php
@@ -321,7 +321,7 @@ private function decorate($content, $css)
 <!DOCTYPE html>
 <html>
     <head>
-        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+        <meta charset="UTF-8" />
         <meta name="robots" content="noindex,nofollow" />
         <style>
             /* Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html */
diff --git a/core/vendor/symfony/debug/Symfony/Component/Debug/README.md b/core/vendor/symfony/debug/Symfony/Component/Debug/README.md
index dd5bdca..cad3893 100644
--- a/core/vendor/symfony/debug/Symfony/Component/Debug/README.md
+++ b/core/vendor/symfony/debug/Symfony/Component/Debug/README.md
@@ -6,23 +6,27 @@ Debug provides tools to make debugging easier.
 Enabling all debug tools is as easy as calling the `enable()` method on the
 main `Debug` class:
 
-    use Symfony\Component\Debug\Debug;
+```php
+use Symfony\Component\Debug\Debug;
 
-    Debug::enable();
+Debug::enable();
+```
 
 You can also use the tools individually:
 
-    use Symfony\Component\Debug\ErrorHandler;
-    use Symfony\Component\Debug\ExceptionHandler;
+```php
+use Symfony\Component\Debug\ErrorHandler;
+use Symfony\Component\Debug\ExceptionHandler;
 
-    error_reporting(-1);
+error_reporting(-1);
 
-    ErrorHandler::register($errorReportingLevel);
-    if ('cli' !== php_sapi_name()) {
-        ExceptionHandler::register();
-    } elseif (!ini_get('log_errors') || ini_get('error_log')) {
-        ini_set('display_errors', 1);
-    }
+ErrorHandler::register($errorReportingLevel);
+if ('cli' !== php_sapi_name()) {
+    ExceptionHandler::register();
+} elseif (!ini_get('log_errors') || ini_get('error_log')) {
+    ini_set('display_errors', 1);
+}
+```
 
 Note that the `Debug::enable()` call also registers the debug class loader
 from the Symfony ClassLoader component when available.
diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/README.md b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/README.md
index 29d1cd0..cd170ab 100644
--- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/README.md
+++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/README.md
@@ -6,45 +6,51 @@ Injection Container.
 
 Here is a simple example that shows how to register services and parameters:
 
-    use Symfony\Component\DependencyInjection\ContainerBuilder;
-    use Symfony\Component\DependencyInjection\Reference;
+```php
+use Symfony\Component\DependencyInjection\ContainerBuilder;
+use Symfony\Component\DependencyInjection\Reference;
 
-    $sc = new ContainerBuilder();
-    $sc
-        ->register('foo', '%foo.class%')
-        ->addArgument(new Reference('bar'))
-    ;
-    $sc->setParameter('foo.class', 'Foo');
+$sc = new ContainerBuilder();
+$sc
+    ->register('foo', '%foo.class%')
+    ->addArgument(new Reference('bar'))
+;
+$sc->setParameter('foo.class', 'Foo');
 
-    $sc->get('foo');
+$sc->get('foo');
+```
 
 Method Calls (Setter Injection):
 
-    $sc = new ContainerBuilder();
+```php
+$sc = new ContainerBuilder();
 
-    $sc
-        ->register('bar', '%bar.class%')
-        ->addMethodCall('setFoo', array(new Reference('foo')))
-    ;
-    $sc->setParameter('bar.class', 'Bar');
+$sc
+    ->register('bar', '%bar.class%')
+    ->addMethodCall('setFoo', array(new Reference('foo')))
+;
+$sc->setParameter('bar.class', 'Bar');
 
-    $sc->get('bar');
+$sc->get('bar');
+```
 
 Factory Class:
 
 If your service is retrieved by calling a static method:
 
-    $sc = new ContainerBuilder();
+```php
+$sc = new ContainerBuilder();
 
-    $sc
-        ->register('bar', '%bar.class%')
-        ->setFactoryClass('%bar.class%')
-        ->setFactoryMethod('getInstance')
-        ->addArgument('Aarrg!!!')
-    ;
-    $sc->setParameter('bar.class', 'Bar');
+$sc
+    ->register('bar', '%bar.class%')
+    ->setFactoryClass('%bar.class%')
+    ->setFactoryMethod('getInstance')
+    ->addArgument('Aarrg!!!')
+;
+$sc->setParameter('bar.class', 'Bar');
 
-    $sc->get('bar');
+$sc->get('bar');
+```
 
 File Include:
 
@@ -52,16 +58,18 @@ For some services, especially those that are difficult or impossible to
 autoload, you may need the container to include a file before
 instantiating your class.
 
-    $sc = new ContainerBuilder();
+```php
+$sc = new ContainerBuilder();
 
-    $sc
-        ->register('bar', '%bar.class%')
-        ->setFile('/path/to/file')
-        ->addArgument('Aarrg!!!')
-    ;
-    $sc->setParameter('bar.class', 'Bar');
+$sc
+    ->register('bar', '%bar.class%')
+    ->setFile('/path/to/file')
+    ->addArgument('Aarrg!!!')
+;
+$sc->setParameter('bar.class', 'Bar');
 
-    $sc->get('bar');
+$sc->get('bar');
+```
 
 Resources
 ---------
diff --git a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/EventDispatcherInterface.php b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/EventDispatcherInterface.php
index 3fdbfd8..c85ebda 100644
--- a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/EventDispatcherInterface.php
+++ b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/EventDispatcherInterface.php
@@ -64,8 +64,8 @@ public function addSubscriber(EventSubscriberInterface $subscriber);
     /**
      * Removes an event listener from the specified events.
      *
-     * @param string|array $eventName The event(s) to remove a listener from
-     * @param callable     $listener  The listener to remove
+     * @param string   $eventName The event to remove a listener from
+     * @param callable $listener  The listener to remove
      */
     public function removeListener($eventName, $listener);
 
diff --git a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/README.md b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/README.md
index 22bf74f..c928f13 100644
--- a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/README.md
+++ b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/README.md
@@ -4,16 +4,18 @@ EventDispatcher Component
 The Symfony2 EventDispatcher component implements the Mediator pattern in a
 simple and effective way to make your projects truly extensible.
 
-    use Symfony\Component\EventDispatcher\EventDispatcher;
-    use Symfony\Component\EventDispatcher\Event;
+```php
+use Symfony\Component\EventDispatcher\EventDispatcher;
+use Symfony\Component\EventDispatcher\Event;
 
-    $dispatcher = new EventDispatcher();
+$dispatcher = new EventDispatcher();
 
-    $dispatcher->addListener('event_name', function (Event $event) {
-        // ...
-    });
+$dispatcher->addListener('event_name', function (Event $event) {
+    // ...
+});
 
-    $dispatcher->dispatch('event_name');
+$dispatcher->dispatch('event_name');
+```
 
 Resources
 ---------
diff --git a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/DependencyInjection/RegisterListenersPassTest.php b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/DependencyInjection/RegisterListenersPassTest.php
index 9c5ee5f..b291e1e 100644
--- a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/DependencyInjection/RegisterListenersPassTest.php
+++ b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/DependencyInjection/RegisterListenersPassTest.php
@@ -37,7 +37,10 @@ public function testEventSubscriberWithoutInterface()
             ->method('getClass')
             ->will($this->returnValue('stdClass'));
 
-        $builder = $this->getMock('Symfony\Component\DependencyInjection\ContainerBuilder');
+        $builder = $this->getMock(
+            'Symfony\Component\DependencyInjection\ContainerBuilder',
+            array('hasDefinition', 'findTaggedServiceIds', 'getDefinition')
+        );
         $builder->expects($this->any())
             ->method('hasDefinition')
             ->will($this->returnValue(true));
@@ -69,7 +72,10 @@ public function testValidEventSubscriber()
             ->method('getClass')
             ->will($this->returnValue('Symfony\Component\EventDispatcher\Tests\DependencyInjection\SubscriberService'));
 
-        $builder = $this->getMock('Symfony\Component\DependencyInjection\ContainerBuilder');
+        $builder = $this->getMock(
+            'Symfony\Component\DependencyInjection\ContainerBuilder',
+            array('hasDefinition', 'findTaggedServiceIds', 'getDefinition', 'findDefinition')
+        );
         $builder->expects($this->any())
             ->method('hasDefinition')
             ->will($this->returnValue(true));
diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/README.md b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/README.md
index ea6a790..008c158 100644
--- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/README.md
+++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/README.md
@@ -9,21 +9,27 @@ sessions, ...
 In this example, we get a Request object from the current PHP global
 variables:
 
-    use Symfony\Component\HttpFoundation\Request;
-    use Symfony\Component\HttpFoundation\Response;
+```php
+use Symfony\Component\HttpFoundation\Request;
+use Symfony\Component\HttpFoundation\Response;
 
-    $request = Request::createFromGlobals();
-    echo $request->getPathInfo();
+$request = Request::createFromGlobals();
+echo $request->getPathInfo();
+```
 
 You can also create a Request directly -- that's interesting for unit testing:
 
-    $request = Request::create('/?foo=bar', 'GET');
-    echo $request->getPathInfo();
+```php
+$request = Request::create('/?foo=bar', 'GET');
+echo $request->getPathInfo();
+```
 
 And here is how to create and send a Response:
 
-    $response = new Response('Not Found', 404, array('Content-Type' => 'text/plain'));
-    $response->send();
+```php
+$response = new Response('Not Found', 404, array('Content-Type' => 'text/plain'));
+$response->send();
+```
 
 The Request and the Response classes have many other methods that implement
 the HTTP specification.
@@ -33,10 +39,12 @@ Loading
 
 If you are not using Composer but are using PHP 5.3.x, you must add the following to your autoloader:
 
-    // SessionHandlerInterface
-    if (!interface_exists('SessionHandlerInterface')) {
-        $loader->registerPrefixFallback(__DIR__.'/../vendor/symfony/src/Symfony/Component/HttpFoundation/Resources/stubs');
-    }
+```php
+// SessionHandlerInterface
+if (!interface_exists('SessionHandlerInterface')) {
+    $loader->registerPrefixFallback(__DIR__.'/../vendor/symfony/src/Symfony/Component/HttpFoundation/Resources/stubs');
+}
+```
 
 Resources
 ---------
diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/RedirectResponse.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/RedirectResponse.php
index 641bd93..ccd50f7 100644
--- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/RedirectResponse.php
+++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/RedirectResponse.php
@@ -89,7 +89,7 @@ public function setTargetUrl($url)
             sprintf('<!DOCTYPE html>
 <html>
     <head>
-        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+        <meta charset="UTF-8" />
         <meta http-equiv="refresh" content="1;url=%1$s" />
 
         <title>Redirecting to %1$s</title>
diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MemcachedSessionHandlerTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MemcachedSessionHandlerTest.php
index 72be327..a7e5908 100644
--- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MemcachedSessionHandlerTest.php
+++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MemcachedSessionHandlerTest.php
@@ -31,6 +31,10 @@ protected function setUp()
             $this->markTestSkipped('Skipped tests Memcached class is not present');
         }
 
+        if (version_compare(phpversion('memcached'), '2.2.0', '>=')) {
+            $this->markTestSkipped('Tests can only be run with memcached extension 2.1.0 or lower');
+        }
+
         $this->memcached = $this->getMock('Memcached');
         $this->storage = new MemcachedSessionHandler(
             $this->memcached,
diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Kernel.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Kernel.php
index c64db08..a697fed 100644
--- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Kernel.php
+++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Kernel.php
@@ -59,11 +59,11 @@
     protected $startTime;
     protected $loadClassCache;
 
-    const VERSION         = '2.5.5';
-    const VERSION_ID      = '20505';
+    const VERSION         = '2.5.6';
+    const VERSION_ID      = '20506';
     const MAJOR_VERSION   = '2';
     const MINOR_VERSION   = '5';
-    const RELEASE_VERSION = '5';
+    const RELEASE_VERSION = '6';
     const EXTRA_VERSION   = '';
 
     /**
diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/README.md b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/README.md
index 7aa0656..8c3c32c 100644
--- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/README.md
+++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/README.md
@@ -7,17 +7,19 @@ frameworks.
 ``HttpKernelInterface`` is the core interface of the Symfony2 full-stack
 framework:
 
-    interface HttpKernelInterface
-    {
-        /**
-         * Handles a Request to convert it to a Response.
-         *
-         * @param  Request $request A Request instance
-         *
-         * @return Response A Response instance
-         */
-        function handle(Request $request, $type = self::MASTER_REQUEST, $catch = true);
-    }
+```php
+interface HttpKernelInterface
+{
+    /**
+     * Handles a Request to convert it to a Response.
+     *
+     * @param  Request $request A Request instance
+     *
+     * @return Response A Response instance
+     */
+    function handle(Request $request, $type = self::MASTER_REQUEST, $catch = true);
+}
+```
 
 It takes a ``Request`` as an input and should return a ``Response`` as an
 output. Using this interface makes your code compatible with all frameworks
@@ -27,28 +29,30 @@ free.
 Creating a framework based on the Symfony2 components is really easy. Here is
 a very simple, but fully-featured framework based on the Symfony2 components:
 
-    $routes = new RouteCollection();
-    $routes->add('hello', new Route('/hello', array('_controller' =>
-        function (Request $request) {
-            return new Response(sprintf("Hello %s", $request->get('name')));
-        }
-    )));
+```php
+$routes = new RouteCollection();
+$routes->add('hello', new Route('/hello', array('_controller' =>
+    function (Request $request) {
+        return new Response(sprintf("Hello %s", $request->get('name')));
+    }
+)));
 
-    $request = Request::createFromGlobals();
+$request = Request::createFromGlobals();
 
-    $context = new RequestContext();
-    $context->fromRequest($request);
+$context = new RequestContext();
+$context->fromRequest($request);
 
-    $matcher = new UrlMatcher($routes, $context);
+$matcher = new UrlMatcher($routes, $context);
 
-    $dispatcher = new EventDispatcher();
-    $dispatcher->addSubscriber(new RouterListener($matcher));
+$dispatcher = new EventDispatcher();
+$dispatcher->addSubscriber(new RouterListener($matcher));
 
-    $resolver = new ControllerResolver();
+$resolver = new ControllerResolver();
 
-    $kernel = new HttpKernel($dispatcher, $resolver);
+$kernel = new HttpKernel($dispatcher, $resolver);
 
-    $kernel->handle($request)->send();
+$kernel->handle($request)->send();
+```
 
 This is all you need to create a flexible framework with the Symfony2
 components.
@@ -56,24 +60,30 @@ components.
 Want to add an HTTP reverse proxy and benefit from HTTP caching and Edge Side
 Includes?
 
-    $kernel = new HttpKernel($dispatcher, $resolver);
+```php
+$kernel = new HttpKernel($dispatcher, $resolver);
 
-    $kernel = new HttpCache($kernel, new Store(__DIR__.'/cache'));
+$kernel = new HttpCache($kernel, new Store(__DIR__.'/cache'));
+```
 
 Want to functional test this small framework?
 
-    $client = new Client($kernel);
-    $crawler = $client->request('GET', '/hello/Fabien');
+```php
+$client = new Client($kernel);
+$crawler = $client->request('GET', '/hello/Fabien');
 
-    $this->assertEquals('Fabien', $crawler->filter('p > span')->text());
+$this->assertEquals('Fabien', $crawler->filter('p > span')->text());
+```
 
 Want nice error pages instead of ugly PHP exceptions?
 
-    $dispatcher->addSubscriber(new ExceptionListener(function (Request $request) {
-        $msg = 'Something went wrong! ('.$request->get('exception')->getMessage().')';
+```php
+$dispatcher->addSubscriber(new ExceptionListener(function (Request $request) {
+    $msg = 'Something went wrong! ('.$request->get('exception')->getMessage().')';
 
-        return new Response($msg, 500);
-    }));
+    return new Response($msg, 500);
+}));
+```
 
 And that's why the simple looking ``HttpKernelInterface`` is so powerful. It
 gives you access to a lot of cool features, ready to be used out of the box,
diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/MergeExtensionConfigurationPassTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/MergeExtensionConfigurationPassTest.php
index 0df6a45..3426f6f 100644
--- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/MergeExtensionConfigurationPassTest.php
+++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/MergeExtensionConfigurationPassTest.php
@@ -17,7 +17,10 @@ class MergeExtensionConfigurationPassTest extends \PHPUnit_Framework_TestCase
 {
     public function testAutoloadMainExtension()
     {
-        $container = $this->getMock('Symfony\\Component\\DependencyInjection\\ContainerBuilder');
+        $container = $this->getMock(
+            'Symfony\\Component\\DependencyInjection\\ContainerBuilder',
+            array('getExtensionConfig', 'loadFromExtension', 'getParameterBag')
+        );
         $params = $this->getMock('Symfony\\Component\\DependencyInjection\\ParameterBag\\ParameterBag');
 
         $container->expects($this->at(0))
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/.gitignore b/core/vendor/symfony/process/Symfony/Component/Process/.gitignore
deleted file mode 100644
index c49a5d8..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-vendor/
-composer.lock
-phpunit.xml
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/CHANGELOG.md b/core/vendor/symfony/process/Symfony/Component/Process/CHANGELOG.md
deleted file mode 100644
index 2f3c1be..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/CHANGELOG.md
+++ /dev/null
@@ -1,40 +0,0 @@
-CHANGELOG
-=========
-
-2.5.0
------
-
- * added support for PTY mode
- * added the convenience method "mustRun"
- * deprecation: Process::setStdin() is deprecated in favor of Process::setInput()
- * deprecation: Process::getStdin() is deprecated in favor of Process::getInput()
- * deprecation: Process::setInput() and ProcessBuilder::setInput() do not accept non-scalar types
-
-2.4.0
------
-
- * added the ability to define an idle timeout
-
-2.3.0
------
-
- * added ProcessUtils::escapeArgument() to fix the bug in escapeshellarg() function on Windows
- * added Process::signal()
- * added Process::getPid()
- * added support for a TTY mode
-
-2.2.0
------
-
- * added ProcessBuilder::setArguments() to reset the arguments on a builder
- * added a way to retrieve the standard and error output incrementally
- * added Process:restart()
-
-2.1.0
------
-
- * added support for non-blocking processes (start(), wait(), isRunning(), stop())
- * enhanced Windows compatibility
- * added Process::getExitCodeText() that returns a string representation for
-   the exit code returned by the process
- * added ProcessBuilder
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Exception/ExceptionInterface.php b/core/vendor/symfony/process/Symfony/Component/Process/Exception/ExceptionInterface.php
deleted file mode 100644
index 75c1c9e..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Exception/ExceptionInterface.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Exception;
-
-/**
- * Marker Interface for the Process Component.
- *
- * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- */
-interface ExceptionInterface
-{
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Exception/InvalidArgumentException.php b/core/vendor/symfony/process/Symfony/Component/Process/Exception/InvalidArgumentException.php
deleted file mode 100644
index 926ee21..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Exception/InvalidArgumentException.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Exception;
-
-/**
- * InvalidArgumentException for the Process Component.
- *
- * @author Romain Neutron <imprec@gmail.com>
- */
-class InvalidArgumentException extends \InvalidArgumentException implements ExceptionInterface
-{
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Exception/LogicException.php b/core/vendor/symfony/process/Symfony/Component/Process/Exception/LogicException.php
deleted file mode 100644
index be3d490..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Exception/LogicException.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Exception;
-
-/**
- * LogicException for the Process Component.
- *
- * @author Romain Neutron <imprec@gmail.com>
- */
-class LogicException extends \LogicException implements ExceptionInterface
-{
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Exception/ProcessFailedException.php b/core/vendor/symfony/process/Symfony/Component/Process/Exception/ProcessFailedException.php
deleted file mode 100644
index 7523a5e..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Exception/ProcessFailedException.php
+++ /dev/null
@@ -1,53 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Exception;
-
-use Symfony\Component\Process\Process;
-
-/**
- * Exception for failed processes.
- *
- * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- */
-class ProcessFailedException extends RuntimeException
-{
-    private $process;
-
-    public function __construct(Process $process)
-    {
-        if ($process->isSuccessful()) {
-            throw new InvalidArgumentException('Expected a failed process, but the given process was successful.');
-        }
-
-        $error = sprintf('The command "%s" failed.'."\nExit Code: %s(%s)",
-            $process->getCommandLine(),
-            $process->getExitCode(),
-            $process->getExitCodeText()
-        );
-
-        if (!$process->isOutputDisabled()) {
-            $error .= sprintf("\n\nOutput:\n================\n%s\n\nError Output:\n================\n%s",
-                $process->getOutput(),
-                $process->getErrorOutput()
-            );
-        }
-
-        parent::__construct($error);
-
-        $this->process = $process;
-    }
-
-    public function getProcess()
-    {
-        return $this->process;
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Exception/ProcessTimedOutException.php b/core/vendor/symfony/process/Symfony/Component/Process/Exception/ProcessTimedOutException.php
deleted file mode 100644
index d451146..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Exception/ProcessTimedOutException.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Exception;
-
-use Symfony\Component\Process\Process;
-
-/**
- * Exception that is thrown when a process times out.
- *
- * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- */
-class ProcessTimedOutException extends RuntimeException
-{
-    const TYPE_GENERAL = 1;
-    const TYPE_IDLE = 2;
-
-    private $process;
-    private $timeoutType;
-
-    public function __construct(Process $process, $timeoutType)
-    {
-        $this->process = $process;
-        $this->timeoutType = $timeoutType;
-
-        parent::__construct(sprintf(
-            'The process "%s" exceeded the timeout of %s seconds.',
-            $process->getCommandLine(),
-            $this->getExceededTimeout()
-        ));
-    }
-
-    public function getProcess()
-    {
-        return $this->process;
-    }
-
-    public function isGeneralTimeout()
-    {
-        return $this->timeoutType === self::TYPE_GENERAL;
-    }
-
-    public function isIdleTimeout()
-    {
-        return $this->timeoutType === self::TYPE_IDLE;
-    }
-
-    public function getExceededTimeout()
-    {
-        switch ($this->timeoutType) {
-            case self::TYPE_GENERAL:
-                return $this->process->getTimeout();
-
-            case self::TYPE_IDLE:
-                return $this->process->getIdleTimeout();
-
-            default:
-                throw new \LogicException(sprintf('Unknown timeout type "%d".', $this->timeoutType));
-        }
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Exception/RuntimeException.php b/core/vendor/symfony/process/Symfony/Component/Process/Exception/RuntimeException.php
deleted file mode 100644
index adead25..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Exception/RuntimeException.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Exception;
-
-/**
- * RuntimeException for the Process Component.
- *
- * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- */
-class RuntimeException extends \RuntimeException implements ExceptionInterface
-{
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/ExecutableFinder.php b/core/vendor/symfony/process/Symfony/Component/Process/ExecutableFinder.php
deleted file mode 100644
index 6ae74dc..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/ExecutableFinder.php
+++ /dev/null
@@ -1,89 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process;
-
-/**
- * Generic executable finder.
- *
- * @author Fabien Potencier <fabien@symfony.com>
- * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- */
-class ExecutableFinder
-{
-    private $suffixes = array('.exe', '.bat', '.cmd', '.com');
-
-    /**
-     * Replaces default suffixes of executable.
-     *
-     * @param array $suffixes
-     */
-    public function setSuffixes(array $suffixes)
-    {
-        $this->suffixes = $suffixes;
-    }
-
-    /**
-     * Adds new possible suffix to check for executable.
-     *
-     * @param string $suffix
-     */
-    public function addSuffix($suffix)
-    {
-        $this->suffixes[] = $suffix;
-    }
-
-    /**
-     * Finds an executable by name.
-     *
-     * @param string $name      The executable name (without the extension)
-     * @param string $default   The default to return if no executable is found
-     * @param array  $extraDirs Additional dirs to check into
-     *
-     * @return string The executable path or default value
-     */
-    public function find($name, $default = null, array $extraDirs = array())
-    {
-        if (ini_get('open_basedir')) {
-            $searchPath = explode(PATH_SEPARATOR, ini_get('open_basedir'));
-            $dirs = array();
-            foreach ($searchPath as $path) {
-                if (is_dir($path)) {
-                    $dirs[] = $path;
-                } else {
-                    if (basename($path) == $name && is_executable($path)) {
-                        return $path;
-                    }
-                }
-            }
-        } else {
-            $dirs = array_merge(
-                explode(PATH_SEPARATOR, getenv('PATH') ?: getenv('Path')),
-                $extraDirs
-            );
-        }
-
-        $suffixes = array('');
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $pathExt = getenv('PATHEXT');
-            $suffixes = $pathExt ? explode(PATH_SEPARATOR, $pathExt) : $this->suffixes;
-        }
-        foreach ($suffixes as $suffix) {
-            foreach ($dirs as $dir) {
-                if (is_file($file = $dir.DIRECTORY_SEPARATOR.$name.$suffix) && (defined('PHP_WINDOWS_VERSION_BUILD') || is_executable($file))) {
-                    return $file;
-                }
-            }
-        }
-
-        return $default;
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/LICENSE b/core/vendor/symfony/process/Symfony/Component/Process/LICENSE
deleted file mode 100644
index 0b3292c..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/LICENSE
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (c) 2004-2014 Fabien Potencier
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is furnished
-to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/PhpExecutableFinder.php b/core/vendor/symfony/process/Symfony/Component/Process/PhpExecutableFinder.php
deleted file mode 100644
index 7854487..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/PhpExecutableFinder.php
+++ /dev/null
@@ -1,86 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process;
-
-/**
- * An executable finder specifically designed for the PHP executable.
- *
- * @author Fabien Potencier <fabien@symfony.com>
- * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- */
-class PhpExecutableFinder
-{
-    private $executableFinder;
-
-    public function __construct()
-    {
-        $this->executableFinder = new ExecutableFinder();
-    }
-
-    /**
-     * Finds The PHP executable.
-     *
-     * @param bool $includeArgs Whether or not include command arguments
-     *
-     * @return string|false The PHP executable path or false if it cannot be found
-     */
-    public function find($includeArgs = true)
-    {
-        // HHVM support
-        if (defined('HHVM_VERSION')) {
-            return (false !== ($hhvm = getenv('PHP_BINARY')) ? $hhvm : PHP_BINARY).($includeArgs ? ' '.implode(' ', $this->findArguments()) : '');
-        }
-
-        // PHP_BINARY return the current sapi executable
-        if (defined('PHP_BINARY') && PHP_BINARY && in_array(PHP_SAPI, array('cli', 'cli-server')) && is_file(PHP_BINARY)) {
-            return PHP_BINARY;
-        }
-
-        if ($php = getenv('PHP_PATH')) {
-            if (!is_executable($php)) {
-                return false;
-            }
-
-            return $php;
-        }
-
-        if ($php = getenv('PHP_PEAR_PHP_BIN')) {
-            if (is_executable($php)) {
-                return $php;
-            }
-        }
-
-        $dirs = array(PHP_BINDIR);
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $dirs[] = 'C:\xampp\php\\';
-        }
-
-        return $this->executableFinder->find('php', false, $dirs);
-    }
-
-    /**
-     * Finds the PHP executable arguments.
-     *
-     * @return array The PHP executable arguments
-     */
-    public function findArguments()
-    {
-        $arguments = array();
-
-        // HHVM support
-        if (defined('HHVM_VERSION')) {
-            $arguments[] = '--php';
-        }
-
-        return $arguments;
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/PhpProcess.php b/core/vendor/symfony/process/Symfony/Component/Process/PhpProcess.php
deleted file mode 100644
index 93948e1..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/PhpProcess.php
+++ /dev/null
@@ -1,73 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process;
-
-use Symfony\Component\Process\Exception\RuntimeException;
-
-/**
- * PhpProcess runs a PHP script in an independent process.
- *
- * $p = new PhpProcess('<?php echo "foo"; ?>');
- * $p->run();
- * print $p->getOutput()."\n";
- *
- * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
- */
-class PhpProcess extends Process
-{
-    private $executableFinder;
-
-    /**
-     * Constructor.
-     *
-     * @param string  $script  The PHP script to run (as a string)
-     * @param string  $cwd     The working directory
-     * @param array   $env     The environment variables
-     * @param int     $timeout The timeout in seconds
-     * @param array   $options An array of options for proc_open
-     *
-     * @api
-     */
-    public function __construct($script, $cwd = null, array $env = array(), $timeout = 60, array $options = array())
-    {
-        parent::__construct(null, $cwd, $env, $script, $timeout, $options);
-
-        $this->executableFinder = new PhpExecutableFinder();
-    }
-
-    /**
-     * Sets the path to the PHP binary to use.
-     *
-     * @api
-     */
-    public function setPhpBinary($php)
-    {
-        $this->setCommandLine($php);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function start($callback = null)
-    {
-        if (null === $this->getCommandLine()) {
-            if (false === $php = $this->executableFinder->find()) {
-                throw new RuntimeException('Unable to find the PHP executable.');
-            }
-            $this->setCommandLine($php);
-        }
-
-        parent::start($callback);
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Process.php b/core/vendor/symfony/process/Symfony/Component/Process/Process.php
deleted file mode 100644
index 7503dad..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Process.php
+++ /dev/null
@@ -1,1509 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process;
-
-use Symfony\Component\Process\Exception\InvalidArgumentException;
-use Symfony\Component\Process\Exception\LogicException;
-use Symfony\Component\Process\Exception\ProcessFailedException;
-use Symfony\Component\Process\Exception\ProcessTimedOutException;
-use Symfony\Component\Process\Exception\RuntimeException;
-
-/**
- * Process is a thin wrapper around proc_* functions to easily
- * start independent PHP processes.
- *
- * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
- */
-class Process
-{
-    const ERR = 'err';
-    const OUT = 'out';
-
-    const STATUS_READY = 'ready';
-    const STATUS_STARTED = 'started';
-    const STATUS_TERMINATED = 'terminated';
-
-    const STDIN = 0;
-    const STDOUT = 1;
-    const STDERR = 2;
-
-    // Timeout Precision in seconds.
-    const TIMEOUT_PRECISION = 0.2;
-
-    private $callback;
-    private $commandline;
-    private $cwd;
-    private $env;
-    private $input;
-    private $starttime;
-    private $lastOutputTime;
-    private $timeout;
-    private $idleTimeout;
-    private $options;
-    private $exitcode;
-    private $fallbackExitcode;
-    private $processInformation;
-    private $outputDisabled = false;
-    private $stdout;
-    private $stderr;
-    private $enhanceWindowsCompatibility = true;
-    private $enhanceSigchildCompatibility;
-    private $process;
-    private $status = self::STATUS_READY;
-    private $incrementalOutputOffset = 0;
-    private $incrementalErrorOutputOffset = 0;
-    private $tty;
-    private $pty;
-
-    private $useFileHandles = false;
-    /** @var ProcessPipes */
-    private $processPipes;
-
-    private $latestSignal;
-
-    private static $sigchild;
-
-    /**
-     * Exit codes translation table.
-     *
-     * User-defined errors must use exit codes in the 64-113 range.
-     *
-     * @var array
-     */
-    public static $exitCodes = array(
-        0 => 'OK',
-        1 => 'General error',
-        2 => 'Misuse of shell builtins',
-
-        126 => 'Invoked command cannot execute',
-        127 => 'Command not found',
-        128 => 'Invalid exit argument',
-
-        // signals
-        129 => 'Hangup',
-        130 => 'Interrupt',
-        131 => 'Quit and dump core',
-        132 => 'Illegal instruction',
-        133 => 'Trace/breakpoint trap',
-        134 => 'Process aborted',
-        135 => 'Bus error: "access to undefined portion of memory object"',
-        136 => 'Floating point exception: "erroneous arithmetic operation"',
-        137 => 'Kill (terminate immediately)',
-        138 => 'User-defined 1',
-        139 => 'Segmentation violation',
-        140 => 'User-defined 2',
-        141 => 'Write to pipe with no one reading',
-        142 => 'Signal raised by alarm',
-        143 => 'Termination (request to terminate)',
-        // 144 - not defined
-        145 => 'Child process terminated, stopped (or continued*)',
-        146 => 'Continue if stopped',
-        147 => 'Stop executing temporarily',
-        148 => 'Terminal stop signal',
-        149 => 'Background process attempting to read from tty ("in")',
-        150 => 'Background process attempting to write to tty ("out")',
-        151 => 'Urgent data available on socket',
-        152 => 'CPU time limit exceeded',
-        153 => 'File size limit exceeded',
-        154 => 'Signal raised by timer counting virtual time: "virtual timer expired"',
-        155 => 'Profiling timer expired',
-        // 156 - not defined
-        157 => 'Pollable event',
-        // 158 - not defined
-        159 => 'Bad syscall',
-    );
-
-    /**
-     * Constructor.
-     *
-     * @param string             $commandline The command line to run
-     * @param string|null        $cwd         The working directory or null to use the working dir of the current PHP process
-     * @param array|null         $env         The environment variables or null to inherit
-     * @param string|null        $input       The input
-     * @param int|float|null     $timeout     The timeout in seconds or null to disable
-     * @param array              $options     An array of options for proc_open
-     *
-     * @throws RuntimeException When proc_open is not installed
-     *
-     * @api
-     */
-    public function __construct($commandline, $cwd = null, array $env = null, $input = null, $timeout = 60, array $options = array())
-    {
-        if (!function_exists('proc_open')) {
-            throw new RuntimeException('The Process class relies on proc_open, which is not available on your PHP installation.');
-        }
-
-        $this->commandline = $commandline;
-        $this->cwd = $cwd;
-
-        // on Windows, if the cwd changed via chdir(), proc_open defaults to the dir where PHP was started
-        // on Gnu/Linux, PHP builds with --enable-maintainer-zts are also affected
-        // @see : https://bugs.php.net/bug.php?id=51800
-        // @see : https://bugs.php.net/bug.php?id=50524
-        if (null === $this->cwd && (defined('ZEND_THREAD_SAFE') || defined('PHP_WINDOWS_VERSION_BUILD'))) {
-            $this->cwd = getcwd();
-        }
-        if (null !== $env) {
-            $this->setEnv($env);
-        }
-
-        $this->input = $input;
-        $this->setTimeout($timeout);
-        $this->useFileHandles = defined('PHP_WINDOWS_VERSION_BUILD');
-        $this->pty = false;
-        $this->enhanceWindowsCompatibility = true;
-        $this->enhanceSigchildCompatibility = !defined('PHP_WINDOWS_VERSION_BUILD') && $this->isSigchildEnabled();
-        $this->options = array_replace(array('suppress_errors' => true, 'binary_pipes' => true), $options);
-    }
-
-    public function __destruct()
-    {
-        // stop() will check if we have a process running.
-        $this->stop();
-    }
-
-    public function __clone()
-    {
-        $this->resetProcessData();
-    }
-
-    /**
-     * Runs the process.
-     *
-     * The callback receives the type of output (out or err) and
-     * some bytes from the output in real-time. It allows to have feedback
-     * from the independent process during execution.
-     *
-     * The STDOUT and STDERR are also available after the process is finished
-     * via the getOutput() and getErrorOutput() methods.
-     *
-     * @param callable|null $callback A PHP callback to run whenever there is some
-     *                                output available on STDOUT or STDERR
-     *
-     * @return int     The exit status code
-     *
-     * @throws RuntimeException When process can't be launched
-     * @throws RuntimeException When process stopped after receiving signal
-     * @throws LogicException   In case a callback is provided and output has been disabled
-     *
-     * @api
-     */
-    public function run($callback = null)
-    {
-        $this->start($callback);
-
-        return $this->wait();
-    }
-
-    /**
-     * Runs the process.
-     *
-     * This is identical to run() except that an exception is thrown if the process
-     * exits with a non-zero exit code.
-     *
-     * @param callable|null $callback
-     *
-     * @return self
-     *
-     * @throws RuntimeException       if PHP was compiled with --enable-sigchild and the enhanced sigchild compatibility mode is not enabled
-     * @throws ProcessFailedException if the process didn't terminate successfully
-     */
-    public function mustRun($callback = null)
-    {
-        if ($this->isSigchildEnabled() && !$this->enhanceSigchildCompatibility) {
-            throw new RuntimeException('This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.');
-        }
-
-        if (0 !== $this->run($callback)) {
-            throw new ProcessFailedException($this);
-        }
-
-        return $this;
-    }
-
-    /**
-     * Starts the process and returns after writing the input to STDIN.
-     *
-     * This method blocks until all STDIN data is sent to the process then it
-     * returns while the process runs in the background.
-     *
-     * The termination of the process can be awaited with wait().
-     *
-     * The callback receives the type of output (out or err) and some bytes from
-     * the output in real-time while writing the standard input to the process.
-     * It allows to have feedback from the independent process during execution.
-     * If there is no callback passed, the wait() method can be called
-     * with true as a second parameter then the callback will get all data occurred
-     * in (and since) the start call.
-     *
-     * @param callable|null $callback A PHP callback to run whenever there is some
-     *                                output available on STDOUT or STDERR
-     *
-     * @return Process The process itself
-     *
-     * @throws RuntimeException When process can't be launched
-     * @throws RuntimeException When process is already running
-     * @throws LogicException   In case a callback is provided and output has been disabled
-     */
-    public function start($callback = null)
-    {
-        if ($this->isRunning()) {
-            throw new RuntimeException('Process is already running');
-        }
-        if ($this->outputDisabled && null !== $callback) {
-            throw new LogicException('Output has been disabled, enable it to allow the use of a callback.');
-        }
-
-        $this->resetProcessData();
-        $this->starttime = $this->lastOutputTime = microtime(true);
-        $this->callback = $this->buildCallback($callback);
-        $descriptors = $this->getDescriptors();
-
-        $commandline = $this->commandline;
-
-        if (defined('PHP_WINDOWS_VERSION_BUILD') && $this->enhanceWindowsCompatibility) {
-            $commandline = 'cmd /V:ON /E:ON /C "('.$commandline.')';
-            foreach ($this->processPipes->getFiles() as $offset => $filename) {
-                $commandline .= ' '.$offset.'>'.ProcessUtils::escapeArgument($filename);
-            }
-            $commandline .= '"';
-
-            if (!isset($this->options['bypass_shell'])) {
-                $this->options['bypass_shell'] = true;
-            }
-        }
-
-        $this->process = proc_open($commandline, $descriptors, $this->processPipes->pipes, $this->cwd, $this->env, $this->options);
-
-        if (!is_resource($this->process)) {
-            throw new RuntimeException('Unable to launch a new process.');
-        }
-        $this->status = self::STATUS_STARTED;
-
-        $this->processPipes->unblock();
-
-        if ($this->tty) {
-            return;
-        }
-
-        $this->processPipes->write(false, $this->input);
-        $this->updateStatus(false);
-        $this->checkTimeout();
-    }
-
-    /**
-     * Restarts the process.
-     *
-     * Be warned that the process is cloned before being started.
-     *
-     * @param callable|null $callback A PHP callback to run whenever there is some
-     *                                output available on STDOUT or STDERR
-     *
-     * @return Process The new process
-     *
-     * @throws RuntimeException When process can't be launched
-     * @throws RuntimeException When process is already running
-     *
-     * @see start()
-     */
-    public function restart($callback = null)
-    {
-        if ($this->isRunning()) {
-            throw new RuntimeException('Process is already running');
-        }
-
-        $process = clone $this;
-        $process->start($callback);
-
-        return $process;
-    }
-
-    /**
-     * Waits for the process to terminate.
-     *
-     * The callback receives the type of output (out or err) and some bytes
-     * from the output in real-time while writing the standard input to the process.
-     * It allows to have feedback from the independent process during execution.
-     *
-     * @param callable|null $callback A valid PHP callback
-     *
-     * @return int     The exitcode of the process
-     *
-     * @throws RuntimeException When process timed out
-     * @throws RuntimeException When process stopped after receiving signal
-     * @throws LogicException   When process is not yet started
-     */
-    public function wait($callback = null)
-    {
-        $this->requireProcessIsStarted(__FUNCTION__);
-
-        $this->updateStatus(false);
-        if (null !== $callback) {
-            $this->callback = $this->buildCallback($callback);
-        }
-
-        do {
-            $this->checkTimeout();
-            $running = defined('PHP_WINDOWS_VERSION_BUILD') ? $this->isRunning() : $this->processPipes->hasOpenHandles();
-            $close = !defined('PHP_WINDOWS_VERSION_BUILD') || !$running;
-            $this->readPipes(true, $close);
-        } while ($running);
-
-        while ($this->isRunning()) {
-            usleep(1000);
-        }
-
-        if ($this->processInformation['signaled'] && $this->processInformation['termsig'] !== $this->latestSignal) {
-            throw new RuntimeException(sprintf('The process has been signaled with signal "%s".', $this->processInformation['termsig']));
-        }
-
-        return $this->exitcode;
-    }
-
-    /**
-     * Returns the Pid (process identifier), if applicable.
-     *
-     * @return int|null     The process id if running, null otherwise
-     *
-     * @throws RuntimeException In case --enable-sigchild is activated
-     */
-    public function getPid()
-    {
-        if ($this->isSigchildEnabled()) {
-            throw new RuntimeException('This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.');
-        }
-
-        $this->updateStatus(false);
-
-        return $this->isRunning() ? $this->processInformation['pid'] : null;
-    }
-
-    /**
-     * Sends a POSIX signal to the process.
-     *
-     * @param  int     $signal A valid POSIX signal (see http://www.php.net/manual/en/pcntl.constants.php)
-     *
-     * @return Process
-     *
-     * @throws LogicException   In case the process is not running
-     * @throws RuntimeException In case --enable-sigchild is activated
-     * @throws RuntimeException In case of failure
-     */
-    public function signal($signal)
-    {
-        $this->doSignal($signal, true);
-
-        return $this;
-    }
-
-    /**
-     * Disables fetching output and error output from the underlying process.
-     *
-     * @return Process
-     *
-     * @throws RuntimeException In case the process is already running
-     * @throws LogicException   if an idle timeout is set
-     */
-    public function disableOutput()
-    {
-        if ($this->isRunning()) {
-            throw new RuntimeException('Disabling output while the process is running is not possible.');
-        }
-        if (null !== $this->idleTimeout) {
-            throw new LogicException('Output can not be disabled while an idle timeout is set.');
-        }
-
-        $this->outputDisabled = true;
-
-        return $this;
-    }
-
-    /**
-     * Enables fetching output and error output from the underlying process.
-     *
-     * @return Process
-     *
-     * @throws RuntimeException In case the process is already running
-     */
-    public function enableOutput()
-    {
-        if ($this->isRunning()) {
-            throw new RuntimeException('Enabling output while the process is running is not possible.');
-        }
-
-        $this->outputDisabled = false;
-
-        return $this;
-    }
-
-    /**
-     * Returns true in case the output is disabled, false otherwise.
-     *
-     * @return bool
-     */
-    public function isOutputDisabled()
-    {
-        return $this->outputDisabled;
-    }
-
-    /**
-     * Returns the current output of the process (STDOUT).
-     *
-     * @return string The process output
-     *
-     * @throws LogicException in case the output has been disabled
-     * @throws LogicException In case the process is not started
-     *
-     * @api
-     */
-    public function getOutput()
-    {
-        if ($this->outputDisabled) {
-            throw new LogicException('Output has been disabled.');
-        }
-
-        $this->requireProcessIsStarted(__FUNCTION__);
-
-        $this->readPipes(false, defined('PHP_WINDOWS_VERSION_BUILD') ? !$this->processInformation['running'] : true);
-
-        return $this->stdout;
-    }
-
-    /**
-     * Returns the output incrementally.
-     *
-     * In comparison with the getOutput method which always return the whole
-     * output, this one returns the new output since the last call.
-     *
-     * @throws LogicException in case the output has been disabled
-     * @throws LogicException In case the process is not started
-     *
-     * @return string The process output since the last call
-     */
-    public function getIncrementalOutput()
-    {
-        $this->requireProcessIsStarted(__FUNCTION__);
-
-        $data = $this->getOutput();
-
-        $latest = substr($data, $this->incrementalOutputOffset);
-        $this->incrementalOutputOffset = strlen($data);
-
-        return $latest;
-    }
-
-    /**
-     * Clears the process output.
-     *
-     * @return Process
-     */
-    public function clearOutput()
-    {
-        $this->stdout = '';
-        $this->incrementalOutputOffset = 0;
-
-        return $this;
-    }
-
-    /**
-     * Returns the current error output of the process (STDERR).
-     *
-     * @return string The process error output
-     *
-     * @throws LogicException in case the output has been disabled
-     * @throws LogicException In case the process is not started
-     *
-     * @api
-     */
-    public function getErrorOutput()
-    {
-        if ($this->outputDisabled) {
-            throw new LogicException('Output has been disabled.');
-        }
-
-        $this->requireProcessIsStarted(__FUNCTION__);
-
-        $this->readPipes(false, defined('PHP_WINDOWS_VERSION_BUILD') ? !$this->processInformation['running'] : true);
-
-        return $this->stderr;
-    }
-
-    /**
-     * Returns the errorOutput incrementally.
-     *
-     * In comparison with the getErrorOutput method which always return the
-     * whole error output, this one returns the new error output since the last
-     * call.
-     *
-     * @throws LogicException in case the output has been disabled
-     * @throws LogicException In case the process is not started
-     *
-     * @return string The process error output since the last call
-     */
-    public function getIncrementalErrorOutput()
-    {
-        $this->requireProcessIsStarted(__FUNCTION__);
-
-        $data = $this->getErrorOutput();
-
-        $latest = substr($data, $this->incrementalErrorOutputOffset);
-        $this->incrementalErrorOutputOffset = strlen($data);
-
-        return $latest;
-    }
-
-    /**
-     * Clears the process output.
-     *
-     * @return Process
-     */
-    public function clearErrorOutput()
-    {
-        $this->stderr = '';
-        $this->incrementalErrorOutputOffset = 0;
-
-        return $this;
-    }
-
-    /**
-     * Returns the exit code returned by the process.
-     *
-     * @return null|int     The exit status code, null if the Process is not terminated
-     *
-     * @throws RuntimeException In case --enable-sigchild is activated and the sigchild compatibility mode is disabled
-     *
-     * @api
-     */
-    public function getExitCode()
-    {
-        if ($this->isSigchildEnabled() && !$this->enhanceSigchildCompatibility) {
-            throw new RuntimeException('This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.');
-        }
-
-        $this->updateStatus(false);
-
-        return $this->exitcode;
-    }
-
-    /**
-     * Returns a string representation for the exit code returned by the process.
-     *
-     * This method relies on the Unix exit code status standardization
-     * and might not be relevant for other operating systems.
-     *
-     * @return null|string A string representation for the exit status code, null if the Process is not terminated.
-     *
-     * @throws RuntimeException In case --enable-sigchild is activated and the sigchild compatibility mode is disabled
-     *
-     * @see http://tldp.org/LDP/abs/html/exitcodes.html
-     * @see http://en.wikipedia.org/wiki/Unix_signal
-     */
-    public function getExitCodeText()
-    {
-        if (null === $exitcode = $this->getExitCode()) {
-            return;
-        }
-
-        return isset(self::$exitCodes[$exitcode]) ? self::$exitCodes[$exitcode] : 'Unknown error';
-    }
-
-    /**
-     * Checks if the process ended successfully.
-     *
-     * @return bool    true if the process ended successfully, false otherwise
-     *
-     * @api
-     */
-    public function isSuccessful()
-    {
-        return 0 === $this->getExitCode();
-    }
-
-    /**
-     * Returns true if the child process has been terminated by an uncaught signal.
-     *
-     * It always returns false on Windows.
-     *
-     * @return bool
-     *
-     * @throws RuntimeException In case --enable-sigchild is activated
-     * @throws LogicException   In case the process is not terminated
-     *
-     * @api
-     */
-    public function hasBeenSignaled()
-    {
-        $this->requireProcessIsTerminated(__FUNCTION__);
-
-        if ($this->isSigchildEnabled()) {
-            throw new RuntimeException('This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.');
-        }
-
-        $this->updateStatus(false);
-
-        return $this->processInformation['signaled'];
-    }
-
-    /**
-     * Returns the number of the signal that caused the child process to terminate its execution.
-     *
-     * It is only meaningful if hasBeenSignaled() returns true.
-     *
-     * @return int
-     *
-     * @throws RuntimeException In case --enable-sigchild is activated
-     * @throws LogicException   In case the process is not terminated
-     *
-     * @api
-     */
-    public function getTermSignal()
-    {
-        $this->requireProcessIsTerminated(__FUNCTION__);
-
-        if ($this->isSigchildEnabled()) {
-            throw new RuntimeException('This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.');
-        }
-
-        $this->updateStatus(false);
-
-        return $this->processInformation['termsig'];
-    }
-
-    /**
-     * Returns true if the child process has been stopped by a signal.
-     *
-     * It always returns false on Windows.
-     *
-     * @return bool
-     *
-     * @throws LogicException In case the process is not terminated
-     *
-     * @api
-     */
-    public function hasBeenStopped()
-    {
-        $this->requireProcessIsTerminated(__FUNCTION__);
-
-        $this->updateStatus(false);
-
-        return $this->processInformation['stopped'];
-    }
-
-    /**
-     * Returns the number of the signal that caused the child process to stop its execution.
-     *
-     * It is only meaningful if hasBeenStopped() returns true.
-     *
-     * @return int
-     *
-     * @throws LogicException In case the process is not terminated
-     *
-     * @api
-     */
-    public function getStopSignal()
-    {
-        $this->requireProcessIsTerminated(__FUNCTION__);
-
-        $this->updateStatus(false);
-
-        return $this->processInformation['stopsig'];
-    }
-
-    /**
-     * Checks if the process is currently running.
-     *
-     * @return bool    true if the process is currently running, false otherwise
-     */
-    public function isRunning()
-    {
-        if (self::STATUS_STARTED !== $this->status) {
-            return false;
-        }
-
-        $this->updateStatus(false);
-
-        return $this->processInformation['running'];
-    }
-
-    /**
-     * Checks if the process has been started with no regard to the current state.
-     *
-     * @return bool    true if status is ready, false otherwise
-     */
-    public function isStarted()
-    {
-        return $this->status != self::STATUS_READY;
-    }
-
-    /**
-     * Checks if the process is terminated.
-     *
-     * @return bool    true if process is terminated, false otherwise
-     */
-    public function isTerminated()
-    {
-        $this->updateStatus(false);
-
-        return $this->status == self::STATUS_TERMINATED;
-    }
-
-    /**
-     * Gets the process status.
-     *
-     * The status is one of: ready, started, terminated.
-     *
-     * @return string The current process status
-     */
-    public function getStatus()
-    {
-        $this->updateStatus(false);
-
-        return $this->status;
-    }
-
-    /**
-     * Stops the process.
-     *
-     * @param int|float     $timeout The timeout in seconds
-     * @param int           $signal  A POSIX signal to send in case the process has not stop at timeout, default is SIGKILL
-     *
-     * @return int     The exit-code of the process
-     *
-     * @throws RuntimeException if the process got signaled
-     */
-    public function stop($timeout = 10, $signal = null)
-    {
-        $timeoutMicro = microtime(true) + $timeout;
-        if ($this->isRunning()) {
-            if (defined('PHP_WINDOWS_VERSION_BUILD') && !$this->isSigchildEnabled()) {
-                exec(sprintf("taskkill /F /T /PID %d 2>&1", $this->getPid()), $output, $exitCode);
-                if ($exitCode > 0) {
-                    throw new RuntimeException('Unable to kill the process');
-                }
-            }
-            // given `SIGTERM` may not be defined and that `proc_terminate` uses the constant value and not the constant itself, we use the same here
-            $this->doSignal(15, false);
-            do {
-                usleep(1000);
-            } while ($this->isRunning() && microtime(true) < $timeoutMicro);
-
-            if ($this->isRunning() && !$this->isSigchildEnabled()) {
-                if (null !== $signal || defined('SIGKILL')) {
-                    // avoid exception here :
-                    // process is supposed to be running, but it might have stop
-                    // just after this line.
-                    // in any case, let's silently discard the error, we can not do anything
-                    $this->doSignal($signal ?: SIGKILL, false);
-                }
-            }
-        }
-
-        $this->updateStatus(false);
-        if ($this->processInformation['running']) {
-            $this->close();
-        }
-
-        return $this->exitcode;
-    }
-
-    /**
-     * Adds a line to the STDOUT stream.
-     *
-     * @param string $line The line to append
-     */
-    public function addOutput($line)
-    {
-        $this->lastOutputTime = microtime(true);
-        $this->stdout .= $line;
-    }
-
-    /**
-     * Adds a line to the STDERR stream.
-     *
-     * @param string $line The line to append
-     */
-    public function addErrorOutput($line)
-    {
-        $this->lastOutputTime = microtime(true);
-        $this->stderr .= $line;
-    }
-
-    /**
-     * Gets the command line to be executed.
-     *
-     * @return string The command to execute
-     */
-    public function getCommandLine()
-    {
-        return $this->commandline;
-    }
-
-    /**
-     * Sets the command line to be executed.
-     *
-     * @param string $commandline The command to execute
-     *
-     * @return self The current Process instance
-     */
-    public function setCommandLine($commandline)
-    {
-        $this->commandline = $commandline;
-
-        return $this;
-    }
-
-    /**
-     * Gets the process timeout (max. runtime).
-     *
-     * @return float|null The timeout in seconds or null if it's disabled
-     */
-    public function getTimeout()
-    {
-        return $this->timeout;
-    }
-
-    /**
-     * Gets the process idle timeout (max. time since last output).
-     *
-     * @return float|null The timeout in seconds or null if it's disabled
-     */
-    public function getIdleTimeout()
-    {
-        return $this->idleTimeout;
-    }
-
-    /**
-     * Sets the process timeout (max. runtime).
-     *
-     * To disable the timeout, set this value to null.
-     *
-     * @param int|float|null     $timeout The timeout in seconds
-     *
-     * @return self The current Process instance
-     *
-     * @throws InvalidArgumentException if the timeout is negative
-     */
-    public function setTimeout($timeout)
-    {
-        $this->timeout = $this->validateTimeout($timeout);
-
-        return $this;
-    }
-
-    /**
-     * Sets the process idle timeout (max. time since last output).
-     *
-     * To disable the timeout, set this value to null.
-     *
-     * @param int|float|null     $timeout The timeout in seconds
-     *
-     * @return self The current Process instance.
-     *
-     * @throws LogicException           if the output is disabled
-     * @throws InvalidArgumentException if the timeout is negative
-     */
-    public function setIdleTimeout($timeout)
-    {
-        if (null !== $timeout && $this->outputDisabled) {
-            throw new LogicException('Idle timeout can not be set while the output is disabled.');
-        }
-
-        $this->idleTimeout = $this->validateTimeout($timeout);
-
-        return $this;
-    }
-
-    /**
-     * Enables or disables the TTY mode.
-     *
-     * @param bool    $tty True to enabled and false to disable
-     *
-     * @return self The current Process instance
-     *
-     * @throws RuntimeException In case the TTY mode is not supported
-     */
-    public function setTty($tty)
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD') && $tty) {
-            throw new RuntimeException('TTY mode is not supported on Windows platform.');
-        }
-
-        $this->tty = (bool) $tty;
-
-        return $this;
-    }
-
-    /**
-     * Checks if the TTY mode is enabled.
-     *
-     * @return bool    true if the TTY mode is enabled, false otherwise
-     */
-    public function isTty()
-    {
-        return $this->tty;
-    }
-
-    /**
-     * Sets PTY mode.
-     *
-     * @param bool    $bool
-     *
-     * @return self
-     */
-    public function setPty($bool)
-    {
-        $this->pty = (bool) $bool;
-
-        return $this;
-    }
-
-    /**
-     * Returns PTY state.
-     *
-     * @return bool
-     */
-    public function isPty()
-    {
-        return $this->pty;
-    }
-
-    /**
-     * Gets the working directory.
-     *
-     * @return string|null The current working directory or null on failure
-     */
-    public function getWorkingDirectory()
-    {
-        if (null === $this->cwd) {
-            // getcwd() will return false if any one of the parent directories does not have
-            // the readable or search mode set, even if the current directory does
-            return getcwd() ?: null;
-        }
-
-        return $this->cwd;
-    }
-
-    /**
-     * Sets the current working directory.
-     *
-     * @param string $cwd The new working directory
-     *
-     * @return self The current Process instance
-     */
-    public function setWorkingDirectory($cwd)
-    {
-        $this->cwd = $cwd;
-
-        return $this;
-    }
-
-    /**
-     * Gets the environment variables.
-     *
-     * @return array The current environment variables
-     */
-    public function getEnv()
-    {
-        return $this->env;
-    }
-
-    /**
-     * Sets the environment variables.
-     *
-     * An environment variable value should be a string.
-     * If it is an array, the variable is ignored.
-     *
-     * That happens in PHP when 'argv' is registered into
-     * the $_ENV array for instance.
-     *
-     * @param array $env The new environment variables
-     *
-     * @return self The current Process instance
-     */
-    public function setEnv(array $env)
-    {
-        // Process can not handle env values that are arrays
-        $env = array_filter($env, function ($value) {
-            return !is_array($value);
-        });
-
-        $this->env = array();
-        foreach ($env as $key => $value) {
-            $this->env[(binary) $key] = (binary) $value;
-        }
-
-        return $this;
-    }
-
-    /**
-     * Gets the contents of STDIN.
-     *
-     * @return string|null The current contents
-     *
-     * @deprecated Deprecated since version 2.5, to be removed in 3.0.
-     *             This method is deprecated in favor of getInput.
-     */
-    public function getStdin()
-    {
-        return $this->getInput();
-    }
-
-    /**
-     * Gets the Process input.
-     *
-     * @return null|string The Process input
-     */
-    public function getInput()
-    {
-        return $this->input;
-    }
-
-    /**
-     * Sets the contents of STDIN.
-     *
-     * Deprecation: As of Symfony 2.5, this method only accepts scalar values.
-     *
-     * @param string|null $stdin The new contents
-     *
-     * @return self The current Process instance
-     *
-     * @deprecated Deprecated since version 2.5, to be removed in 3.0.
-     *             This method is deprecated in favor of setInput.
-     *
-     * @throws LogicException           In case the process is running
-     * @throws InvalidArgumentException In case the argument is invalid
-     */
-    public function setStdin($stdin)
-    {
-        return $this->setInput($stdin);
-    }
-
-    /**
-     * Sets the input.
-     *
-     * This content will be passed to the underlying process standard input.
-     *
-     * @param string|null $input The content
-     *
-     * @return self The current Process instance
-     *
-     * @throws LogicException In case the process is running
-     */
-    public function setInput($input)
-    {
-        if ($this->isRunning()) {
-            throw new LogicException('Input can not be set while the process is running.');
-        }
-
-        $this->input = ProcessUtils::validateInput(sprintf('%s::%s', __CLASS__, __FUNCTION__), $input);
-
-        return $this;
-    }
-
-    /**
-     * Gets the options for proc_open.
-     *
-     * @return array The current options
-     */
-    public function getOptions()
-    {
-        return $this->options;
-    }
-
-    /**
-     * Sets the options for proc_open.
-     *
-     * @param array $options The new options
-     *
-     * @return self The current Process instance
-     */
-    public function setOptions(array $options)
-    {
-        $this->options = $options;
-
-        return $this;
-    }
-
-    /**
-     * Gets whether or not Windows compatibility is enabled.
-     *
-     * This is true by default.
-     *
-     * @return bool
-     */
-    public function getEnhanceWindowsCompatibility()
-    {
-        return $this->enhanceWindowsCompatibility;
-    }
-
-    /**
-     * Sets whether or not Windows compatibility is enabled.
-     *
-     * @param bool    $enhance
-     *
-     * @return self The current Process instance
-     */
-    public function setEnhanceWindowsCompatibility($enhance)
-    {
-        $this->enhanceWindowsCompatibility = (bool) $enhance;
-
-        return $this;
-    }
-
-    /**
-     * Returns whether sigchild compatibility mode is activated or not.
-     *
-     * @return bool
-     */
-    public function getEnhanceSigchildCompatibility()
-    {
-        return $this->enhanceSigchildCompatibility;
-    }
-
-    /**
-     * Activates sigchild compatibility mode.
-     *
-     * Sigchild compatibility mode is required to get the exit code and
-     * determine the success of a process when PHP has been compiled with
-     * the --enable-sigchild option
-     *
-     * @param bool    $enhance
-     *
-     * @return self The current Process instance
-     */
-    public function setEnhanceSigchildCompatibility($enhance)
-    {
-        $this->enhanceSigchildCompatibility = (bool) $enhance;
-
-        return $this;
-    }
-
-    /**
-     * Performs a check between the timeout definition and the time the process started.
-     *
-     * In case you run a background process (with the start method), you should
-     * trigger this method regularly to ensure the process timeout
-     *
-     * @throws ProcessTimedOutException In case the timeout was reached
-     */
-    public function checkTimeout()
-    {
-        if ($this->status !== self::STATUS_STARTED) {
-            return;
-        }
-
-        if (null !== $this->timeout && $this->timeout < microtime(true) - $this->starttime) {
-            $this->stop(0);
-
-            throw new ProcessTimedOutException($this, ProcessTimedOutException::TYPE_GENERAL);
-        }
-
-        if (null !== $this->idleTimeout && $this->idleTimeout < microtime(true) - $this->lastOutputTime) {
-            $this->stop(0);
-
-            throw new ProcessTimedOutException($this, ProcessTimedOutException::TYPE_IDLE);
-        }
-    }
-
-    /**
-     * Returns whether PTY is supported on the current operating system.
-     *
-     * @return bool
-     */
-    public static function isPtySupported()
-    {
-        static $result;
-
-        if (null !== $result) {
-            return $result;
-        }
-
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            return $result = false;
-        }
-
-        $proc = @proc_open('echo 1', array(array('pty'), array('pty'), array('pty')), $pipes);
-        if (is_resource($proc)) {
-            proc_close($proc);
-
-            return $result = true;
-        }
-
-        return $result = false;
-    }
-
-    /**
-     * Creates the descriptors needed by the proc_open.
-     *
-     * @return array
-     */
-    private function getDescriptors()
-    {
-        $this->processPipes = new ProcessPipes($this->useFileHandles, $this->tty, $this->pty, $this->outputDisabled);
-        $descriptors = $this->processPipes->getDescriptors();
-
-        if (!$this->useFileHandles && $this->enhanceSigchildCompatibility && $this->isSigchildEnabled()) {
-            // last exit code is output on the fourth pipe and caught to work around --enable-sigchild
-            $descriptors = array_merge($descriptors, array(array('pipe', 'w')));
-
-            $this->commandline = '('.$this->commandline.') 3>/dev/null; code=$?; echo $code >&3; exit $code';
-        }
-
-        return $descriptors;
-    }
-
-    /**
-     * Builds up the callback used by wait().
-     *
-     * The callbacks adds all occurred output to the specific buffer and calls
-     * the user callback (if present) with the received output.
-     *
-     * @param callable|null $callback The user defined PHP callback
-     *
-     * @return callable A PHP callable
-     */
-    protected function buildCallback($callback)
-    {
-        $that = $this;
-        $out = self::OUT;
-        $err = self::ERR;
-        $callback = function ($type, $data) use ($that, $callback, $out, $err) {
-            if ($out == $type) {
-                $that->addOutput($data);
-            } else {
-                $that->addErrorOutput($data);
-            }
-
-            if (null !== $callback) {
-                call_user_func($callback, $type, $data);
-            }
-        };
-
-        return $callback;
-    }
-
-    /**
-     * Updates the status of the process, reads pipes.
-     *
-     * @param bool    $blocking Whether to use a blocking read call.
-     */
-    protected function updateStatus($blocking)
-    {
-        if (self::STATUS_STARTED !== $this->status) {
-            return;
-        }
-
-        $this->processInformation = proc_get_status($this->process);
-        $this->captureExitCode();
-
-        $this->readPipes($blocking, defined('PHP_WINDOWS_VERSION_BUILD') ? !$this->processInformation['running'] : true);
-
-        if (!$this->processInformation['running']) {
-            $this->close();
-        }
-    }
-
-    /**
-     * Returns whether PHP has been compiled with the '--enable-sigchild' option or not.
-     *
-     * @return bool
-     */
-    protected function isSigchildEnabled()
-    {
-        if (null !== self::$sigchild) {
-            return self::$sigchild;
-        }
-
-        if (!function_exists('phpinfo')) {
-            return self::$sigchild = false;
-        }
-
-        ob_start();
-        phpinfo(INFO_GENERAL);
-
-        return self::$sigchild = false !== strpos(ob_get_clean(), '--enable-sigchild');
-    }
-
-    /**
-     * Validates and returns the filtered timeout.
-     *
-     * @param int|float|null     $timeout
-     *
-     * @return float|null
-     *
-     * @throws InvalidArgumentException if the given timeout is a negative number
-     */
-    private function validateTimeout($timeout)
-    {
-        $timeout = (float) $timeout;
-
-        if (0.0 === $timeout) {
-            $timeout = null;
-        } elseif ($timeout < 0) {
-            throw new InvalidArgumentException('The timeout value must be a valid positive integer or float number.');
-        }
-
-        return $timeout;
-    }
-
-    /**
-     * Reads pipes, executes callback.
-     *
-     * @param bool    $blocking Whether to use blocking calls or not.
-     * @param bool    $close    Whether to close file handles or not.
-     */
-    private function readPipes($blocking, $close)
-    {
-        if ($close) {
-            $result = $this->processPipes->readAndCloseHandles($blocking);
-        } else {
-            $result = $this->processPipes->read($blocking);
-        }
-
-        foreach ($result as $type => $data) {
-            if (3 == $type) {
-                $this->fallbackExitcode = (int) $data;
-            } else {
-                call_user_func($this->callback, $type === self::STDOUT ? self::OUT : self::ERR, $data);
-            }
-        }
-    }
-
-    /**
-     * Captures the exitcode if mentioned in the process information.
-     */
-    private function captureExitCode()
-    {
-        if (isset($this->processInformation['exitcode']) && -1 != $this->processInformation['exitcode']) {
-            $this->exitcode = $this->processInformation['exitcode'];
-        }
-    }
-
-    /**
-     * Closes process resource, closes file handles, sets the exitcode.
-     *
-     * @return int     The exitcode
-     */
-    private function close()
-    {
-        $this->processPipes->close();
-        if (is_resource($this->process)) {
-            $exitcode = proc_close($this->process);
-        } else {
-            $exitcode = -1;
-        }
-
-        $this->exitcode = -1 !== $exitcode ? $exitcode : (null !== $this->exitcode ? $this->exitcode : -1);
-        $this->status = self::STATUS_TERMINATED;
-
-        if (-1 === $this->exitcode && null !== $this->fallbackExitcode) {
-            $this->exitcode = $this->fallbackExitcode;
-        } elseif (-1 === $this->exitcode && $this->processInformation['signaled'] && 0 < $this->processInformation['termsig']) {
-            // if process has been signaled, no exitcode but a valid termsig, apply Unix convention
-            $this->exitcode = 128 + $this->processInformation['termsig'];
-        }
-
-        return $this->exitcode;
-    }
-
-    /**
-     * Resets data related to the latest run of the process.
-     */
-    private function resetProcessData()
-    {
-        $this->starttime = null;
-        $this->callback = null;
-        $this->exitcode = null;
-        $this->fallbackExitcode = null;
-        $this->processInformation = null;
-        $this->stdout = null;
-        $this->stderr = null;
-        $this->process = null;
-        $this->latestSignal = null;
-        $this->status = self::STATUS_READY;
-        $this->incrementalOutputOffset = 0;
-        $this->incrementalErrorOutputOffset = 0;
-    }
-
-    /**
-     * Sends a POSIX signal to the process.
-     *
-     * @param  int     $signal         A valid POSIX signal (see http://www.php.net/manual/en/pcntl.constants.php)
-     * @param  bool    $throwException Whether to throw exception in case signal failed
-     *
-     * @return bool    True if the signal was sent successfully, false otherwise
-     *
-     * @throws LogicException   In case the process is not running
-     * @throws RuntimeException In case --enable-sigchild is activated
-     * @throws RuntimeException In case of failure
-     */
-    private function doSignal($signal, $throwException)
-    {
-        if (!$this->isRunning()) {
-            if ($throwException) {
-                throw new LogicException('Can not send signal on a non running process.');
-            }
-
-            return false;
-        }
-
-        if ($this->isSigchildEnabled()) {
-            if ($throwException) {
-                throw new RuntimeException('This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-            }
-
-            return false;
-        }
-
-        if (true !== @proc_terminate($this->process, $signal)) {
-            if ($throwException) {
-                throw new RuntimeException(sprintf('Error while sending signal `%s`.', $signal));
-            }
-
-            return false;
-        }
-
-        $this->latestSignal = $signal;
-
-        return true;
-    }
-
-    /**
-     * Ensures the process is running or terminated, throws a LogicException if the process has a not started.
-     *
-     * @param string $functionName The function name that was called.
-     *
-     * @throws LogicException If the process has not run.
-     */
-    private function requireProcessIsStarted($functionName)
-    {
-        if (!$this->isStarted()) {
-            throw new LogicException(sprintf('Process must be started before calling %s.', $functionName));
-        }
-    }
-
-    /**
-     * Ensures the process is terminated, throws a LogicException if the process has a status different than `terminated`.
-     *
-     * @param string $functionName The function name that was called.
-     *
-     * @throws LogicException If the process is not yet terminated.
-     */
-    private function requireProcessIsTerminated($functionName)
-    {
-        if (!$this->isTerminated()) {
-            throw new LogicException(sprintf('Process must be terminated before calling %s.', $functionName));
-        }
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/ProcessBuilder.php b/core/vendor/symfony/process/Symfony/Component/Process/ProcessBuilder.php
deleted file mode 100644
index 71633cd..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/ProcessBuilder.php
+++ /dev/null
@@ -1,287 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process;
-
-use Symfony\Component\Process\Exception\InvalidArgumentException;
-use Symfony\Component\Process\Exception\LogicException;
-
-/**
- * Process builder.
- *
- * @author Kris Wallsmith <kris@symfony.com>
- */
-class ProcessBuilder
-{
-    private $arguments;
-    private $cwd;
-    private $env = array();
-    private $input;
-    private $timeout = 60;
-    private $options = array();
-    private $inheritEnv = true;
-    private $prefix = array();
-    private $outputDisabled = false;
-
-    /**
-     * Constructor
-     *
-     * @param string[] $arguments An array of arguments
-     */
-    public function __construct(array $arguments = array())
-    {
-        $this->arguments = $arguments;
-    }
-
-    /**
-     * Creates a process builder instance.
-     *
-     * @param string[] $arguments An array of arguments
-     *
-     * @return ProcessBuilder
-     */
-    public static function create(array $arguments = array())
-    {
-        return new static($arguments);
-    }
-
-    /**
-     * Adds an unescaped argument to the command string.
-     *
-     * @param string $argument A command argument
-     *
-     * @return ProcessBuilder
-     */
-    public function add($argument)
-    {
-        $this->arguments[] = $argument;
-
-        return $this;
-    }
-
-    /**
-     * Adds an unescaped prefix to the command string.
-     *
-     * The prefix is preserved when resetting arguments.
-     *
-     * @param string|array $prefix A command prefix or an array of command prefixes
-     *
-     * @return ProcessBuilder
-     */
-    public function setPrefix($prefix)
-    {
-        $this->prefix = is_array($prefix) ? $prefix : array($prefix);
-
-        return $this;
-    }
-
-    /**
-     * Sets the arguments of the process.
-     *
-     * Arguments must not be escaped.
-     * Previous arguments are removed.
-     *
-     * @param string[] $arguments
-     *
-     * @return ProcessBuilder
-     */
-    public function setArguments(array $arguments)
-    {
-        $this->arguments = $arguments;
-
-        return $this;
-    }
-
-    /**
-     * Sets the working directory.
-     *
-     * @param null|string $cwd The working directory
-     *
-     * @return ProcessBuilder
-     */
-    public function setWorkingDirectory($cwd)
-    {
-        $this->cwd = $cwd;
-
-        return $this;
-    }
-
-    /**
-     * Sets whether environment variables will be inherited or not.
-     *
-     * @param bool $inheritEnv
-     *
-     * @return ProcessBuilder
-     */
-    public function inheritEnvironmentVariables($inheritEnv = true)
-    {
-        $this->inheritEnv = $inheritEnv;
-
-        return $this;
-    }
-
-    /**
-     * Sets an environment variable
-     *
-     * Setting a variable overrides its previous value. Use `null` to unset a
-     * defined environment variable.
-     *
-     * @param string      $name  The variable name
-     * @param null|string $value The variable value
-     *
-     * @return ProcessBuilder
-     */
-    public function setEnv($name, $value)
-    {
-        $this->env[$name] = $value;
-
-        return $this;
-    }
-
-    /**
-     * Adds a set of environment variables.
-     *
-     * Already existing environment variables with the same name will be
-     * overridden by the new values passed to this method. Pass `null` to unset
-     * a variable.
-     *
-     * @param array $variables The variables
-     *
-     * @return ProcessBuilder
-     */
-    public function addEnvironmentVariables(array $variables)
-    {
-        $this->env = array_replace($this->env, $variables);
-
-        return $this;
-    }
-
-    /**
-     * Sets the input of the process.
-     *
-     * Deprecation: As of Symfony 2.5, this method only accepts string values.
-     *
-     * @param string|null $input The input as a string
-     *
-     * @return ProcessBuilder
-     *
-     * @throws InvalidArgumentException In case the argument is invalid
-     */
-    public function setInput($input)
-    {
-        $this->input = ProcessUtils::validateInput(sprintf('%s::%s', __CLASS__, __FUNCTION__), $input);
-
-        return $this;
-    }
-
-    /**
-     * Sets the process timeout.
-     *
-     * To disable the timeout, set this value to null.
-     *
-     * @param float|null
-     *
-     * @return ProcessBuilder
-     *
-     * @throws InvalidArgumentException
-     */
-    public function setTimeout($timeout)
-    {
-        if (null === $timeout) {
-            $this->timeout = null;
-
-            return $this;
-        }
-
-        $timeout = (float) $timeout;
-
-        if ($timeout < 0) {
-            throw new InvalidArgumentException('The timeout value must be a valid positive integer or float number.');
-        }
-
-        $this->timeout = $timeout;
-
-        return $this;
-    }
-
-    /**
-     * Adds a proc_open option.
-     *
-     * @param string $name  The option name
-     * @param string $value The option value
-     *
-     * @return ProcessBuilder
-     */
-    public function setOption($name, $value)
-    {
-        $this->options[$name] = $value;
-
-        return $this;
-    }
-
-    /**
-     * Disables fetching output and error output from the underlying process.
-     *
-     * @return ProcessBuilder
-     */
-    public function disableOutput()
-    {
-        $this->outputDisabled = true;
-
-        return $this;
-    }
-
-    /**
-     * Enables fetching output and error output from the underlying process.
-     *
-     * @return ProcessBuilder
-     */
-    public function enableOutput()
-    {
-        $this->outputDisabled = false;
-
-        return $this;
-    }
-
-    /**
-     * Creates a Process instance and returns it.
-     *
-     * @return Process
-     *
-     * @throws LogicException In case no arguments have been provided
-     */
-    public function getProcess()
-    {
-        if (0 === count($this->prefix) && 0 === count($this->arguments)) {
-            throw new LogicException('You must add() command arguments before calling getProcess().');
-        }
-
-        $options = $this->options;
-
-        $arguments = array_merge($this->prefix, $this->arguments);
-        $script = implode(' ', array_map(array(__NAMESPACE__.'\\ProcessUtils', 'escapeArgument'), $arguments));
-
-        if ($this->inheritEnv) {
-            // include $_ENV for BC purposes
-            $env = array_replace($_ENV, $_SERVER, $this->env);
-        } else {
-            $env = $this->env;
-        }
-
-        $process = new Process($script, $this->cwd, $env, $this->input, $this->timeout, $options);
-
-        if ($this->outputDisabled) {
-            $process->disableOutput();
-        }
-
-        return $process;
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/ProcessPipes.php b/core/vendor/symfony/process/Symfony/Component/Process/ProcessPipes.php
deleted file mode 100644
index 9ed1def..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/ProcessPipes.php
+++ /dev/null
@@ -1,382 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process;
-
-use Symfony\Component\Process\Exception\RuntimeException;
-
-/**
- * ProcessPipes manages descriptors and pipes for the use of proc_open.
- */
-class ProcessPipes
-{
-    /** @var array */
-    public $pipes = array();
-    /** @var array */
-    private $files = array();
-    /** @var array */
-    private $fileHandles = array();
-    /** @var array */
-    private $readBytes = array();
-    /** @var bool    */
-    private $useFiles;
-    /** @var bool    */
-    private $ttyMode;
-    /** @var bool    */
-    private $ptyMode;
-    /** @var bool    */
-    private $disableOutput;
-
-    const CHUNK_SIZE = 16384;
-
-    public function __construct($useFiles, $ttyMode, $ptyMode = false, $disableOutput = false)
-    {
-        $this->useFiles = (bool) $useFiles;
-        $this->ttyMode = (bool) $ttyMode;
-        $this->ptyMode = (bool) $ptyMode;
-        $this->disableOutput = (bool) $disableOutput;
-
-        // Fix for PHP bug #51800: reading from STDOUT pipe hangs forever on Windows if the output is too big.
-        // Workaround for this problem is to use temporary files instead of pipes on Windows platform.
-        //
-        // @see https://bugs.php.net/bug.php?id=51800
-        if ($this->useFiles && !$this->disableOutput) {
-            $this->files = array(
-                Process::STDOUT => tempnam(sys_get_temp_dir(), 'sf_proc_stdout'),
-                Process::STDERR => tempnam(sys_get_temp_dir(), 'sf_proc_stderr'),
-            );
-            foreach ($this->files as $offset => $file) {
-                $this->fileHandles[$offset] = fopen($this->files[$offset], 'rb');
-                if (false === $this->fileHandles[$offset]) {
-                    throw new RuntimeException('A temporary file could not be opened to write the process output to, verify that your TEMP environment variable is writable');
-                }
-            }
-            $this->readBytes = array(
-                Process::STDOUT => 0,
-                Process::STDERR => 0,
-            );
-        }
-    }
-
-    public function __destruct()
-    {
-        $this->close();
-        $this->removeFiles();
-    }
-
-    /**
-     * Sets non-blocking mode on pipes.
-     */
-    public function unblock()
-    {
-        foreach ($this->pipes as $pipe) {
-            stream_set_blocking($pipe, 0);
-        }
-    }
-
-    /**
-     * Closes file handles and pipes.
-     */
-    public function close()
-    {
-        $this->closeUnixPipes();
-        foreach ($this->fileHandles as $handle) {
-            fclose($handle);
-        }
-        $this->fileHandles = array();
-    }
-
-    /**
-     * Closes Unix pipes.
-     *
-     * Nothing happens in case file handles are used.
-     */
-    public function closeUnixPipes()
-    {
-        foreach ($this->pipes as $pipe) {
-            fclose($pipe);
-        }
-        $this->pipes = array();
-    }
-
-    /**
-     * Returns an array of descriptors for the use of proc_open.
-     *
-     * @return array
-     */
-    public function getDescriptors()
-    {
-        if ($this->disableOutput) {
-            $nullstream = fopen(defined('PHP_WINDOWS_VERSION_BUILD') ? 'NUL' : '/dev/null', 'c');
-
-            return array(
-                array('pipe', 'r'),
-                $nullstream,
-                $nullstream,
-            );
-        }
-
-        if ($this->useFiles) {
-            // We're not using pipe on Windows platform as it hangs (https://bugs.php.net/bug.php?id=51800)
-            // We're not using file handles as it can produce corrupted output https://bugs.php.net/bug.php?id=65650
-            // So we redirect output within the commandline and pass the nul device to the process
-            return array(
-                array('pipe', 'r'),
-                array('file', 'NUL', 'w'),
-                array('file', 'NUL', 'w'),
-            );
-        }
-
-        if ($this->ttyMode) {
-            return array(
-                array('file', '/dev/tty', 'r'),
-                array('file', '/dev/tty', 'w'),
-                array('file', '/dev/tty', 'w'),
-            );
-        } elseif ($this->ptyMode && Process::isPtySupported()) {
-            return array(
-                array('pty'),
-                array('pty'),
-                array('pty'),
-            );
-        }
-
-        return array(
-            array('pipe', 'r'), // stdin
-            array('pipe', 'w'), // stdout
-            array('pipe', 'w'), // stderr
-        );
-    }
-
-    /**
-     * Returns an array of filenames indexed by their related stream in case these pipes use temporary files.
-     *
-     * @return array
-     */
-    public function getFiles()
-    {
-        if ($this->useFiles) {
-            return $this->files;
-        }
-
-        return array();
-    }
-
-    /**
-     * Reads data in file handles and pipes.
-     *
-     * @param bool    $blocking Whether to use blocking calls or not.
-     *
-     * @return array An array of read data indexed by their fd.
-     */
-    public function read($blocking)
-    {
-        return array_replace($this->readStreams($blocking), $this->readFileHandles());
-    }
-
-    /**
-     * Reads data in file handles and pipes, closes them if EOF is reached.
-     *
-     * @param bool    $blocking Whether to use blocking calls or not.
-     *
-     * @return array An array of read data indexed by their fd.
-     */
-    public function readAndCloseHandles($blocking)
-    {
-        return array_replace($this->readStreams($blocking, true), $this->readFileHandles(true));
-    }
-
-    /**
-     * Returns if the current state has open file handles or pipes.
-     *
-     * @return bool
-     */
-    public function hasOpenHandles()
-    {
-        if (!$this->useFiles) {
-            return (bool) $this->pipes;
-        }
-
-        return (bool) $this->pipes && (bool) $this->fileHandles;
-    }
-
-    /**
-     * Writes stdin data.
-     *
-     * @param bool        $blocking Whether to use blocking calls or not.
-     * @param string|null $stdin    The data to write.
-     */
-    public function write($blocking, $stdin)
-    {
-        if (null === $stdin) {
-            fclose($this->pipes[0]);
-            unset($this->pipes[0]);
-
-            return;
-        }
-
-        $writePipes = array($this->pipes[0]);
-        unset($this->pipes[0]);
-        $stdinLen = strlen($stdin);
-        $stdinOffset = 0;
-
-        while ($writePipes) {
-            $r = null;
-            $w = $writePipes;
-            $e = null;
-
-            if (false === $n = @stream_select($r, $w, $e, 0, $blocking ? ceil(Process::TIMEOUT_PRECISION * 1E6) : 0)) {
-                // if a system call has been interrupted, forget about it, let's try again
-                if ($this->hasSystemCallBeenInterrupted()) {
-                    continue;
-                }
-                break;
-            }
-
-            // nothing has changed, let's wait until the process is ready
-            if (0 === $n) {
-                continue;
-            }
-
-            if ($w) {
-                $written = fwrite($writePipes[0], (binary) substr($stdin, $stdinOffset), 8192);
-                if (false !== $written) {
-                    $stdinOffset += $written;
-                }
-                if ($stdinOffset >= $stdinLen) {
-                    fclose($writePipes[0]);
-                    $writePipes = null;
-                }
-            }
-        }
-    }
-
-    /**
-     * Reads data in file handles.
-     *
-     * @param bool    $close Whether to close file handles or not.
-     *
-     * @return array An array of read data indexed by their fd.
-     */
-    private function readFileHandles($close = false)
-    {
-        $read = array();
-        $fh = $this->fileHandles;
-        foreach ($fh as $type => $fileHandle) {
-            if (0 !== fseek($fileHandle, $this->readBytes[$type])) {
-                continue;
-            }
-            $data = '';
-            $dataread = null;
-            while (!feof($fileHandle)) {
-                if (false !== $dataread = fread($fileHandle, self::CHUNK_SIZE)) {
-                    $data .= $dataread;
-                }
-            }
-            if (0 < $length = strlen($data)) {
-                $this->readBytes[$type] += $length;
-                $read[$type] = $data;
-            }
-
-            if (false === $dataread || (true === $close && feof($fileHandle) && '' === $data)) {
-                fclose($this->fileHandles[$type]);
-                unset($this->fileHandles[$type]);
-            }
-        }
-
-        return $read;
-    }
-
-    /**
-     * Reads data in file pipes streams.
-     *
-     * @param bool    $blocking Whether to use blocking calls or not.
-     * @param bool    $close    Whether to close file handles or not.
-     *
-     * @return array An array of read data indexed by their fd.
-     */
-    private function readStreams($blocking, $close = false)
-    {
-        if (empty($this->pipes)) {
-            usleep(Process::TIMEOUT_PRECISION * 1E4);
-
-            return array();
-        }
-
-        $read = array();
-
-        $r = $this->pipes;
-        $w = null;
-        $e = null;
-
-        // let's have a look if something changed in streams
-        if (false === $n = @stream_select($r, $w, $e, 0, $blocking ? ceil(Process::TIMEOUT_PRECISION * 1E6) : 0)) {
-            // if a system call has been interrupted, forget about it, let's try again
-            // otherwise, an error occurred, let's reset pipes
-            if (!$this->hasSystemCallBeenInterrupted()) {
-                $this->pipes = array();
-            }
-
-            return $read;
-        }
-
-        // nothing has changed
-        if (0 === $n) {
-            return $read;
-        }
-
-        foreach ($r as $pipe) {
-            $type = array_search($pipe, $this->pipes);
-
-            $data = '';
-            while ('' !== $dataread = (string) fread($pipe, self::CHUNK_SIZE)) {
-                $data .= $dataread;
-            }
-
-            if ('' !== $data) {
-                $read[$type] = $data;
-            }
-
-            if (false === $data || (true === $close && feof($pipe) && '' === $data)) {
-                fclose($this->pipes[$type]);
-                unset($this->pipes[$type]);
-            }
-        }
-
-        return $read;
-    }
-
-    /**
-     * Returns true if a system call has been interrupted.
-     *
-     * @return bool
-     */
-    private function hasSystemCallBeenInterrupted()
-    {
-        $lastError = error_get_last();
-
-        // stream_select returns false when the `select` system call is interrupted by an incoming signal
-        return isset($lastError['message']) && false !== stripos($lastError['message'], 'interrupted system call');
-    }
-
-    /**
-     * Removes temporary files
-     */
-    private function removeFiles()
-    {
-        foreach ($this->files as $filename) {
-            if (file_exists($filename)) {
-                @unlink($filename);
-            }
-        }
-        $this->files = array();
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/ProcessUtils.php b/core/vendor/symfony/process/Symfony/Component/Process/ProcessUtils.php
deleted file mode 100644
index 35ae17c..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/ProcessUtils.php
+++ /dev/null
@@ -1,108 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process;
-
-use Symfony\Component\Process\Exception\InvalidArgumentException;
-
-/**
- * ProcessUtils is a bunch of utility methods.
- *
- * This class contains static methods only and is not meant to be instantiated.
- *
- * @author Martin Hasoň <martin.hason@gmail.com>
- */
-class ProcessUtils
-{
-    /**
-     * This class should not be instantiated
-     */
-    private function __construct()
-    {
-    }
-
-    /**
-     * Escapes a string to be used as a shell argument.
-     *
-     * @param string $argument The argument that will be escaped
-     *
-     * @return string The escaped argument
-     */
-    public static function escapeArgument($argument)
-    {
-        //Fix for PHP bug #43784 escapeshellarg removes % from given string
-        //Fix for PHP bug #49446 escapeshellarg doesn't work on Windows
-        //@see https://bugs.php.net/bug.php?id=43784
-        //@see https://bugs.php.net/bug.php?id=49446
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            if ('' === $argument) {
-                return escapeshellarg($argument);
-            }
-
-            $escapedArgument = '';
-            $quote =  false;
-            foreach (preg_split('/(")/i', $argument, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE) as $part) {
-                if ('"' === $part) {
-                    $escapedArgument .= '\\"';
-                } elseif (self::isSurroundedBy($part, '%')) {
-                    // Avoid environment variable expansion
-                    $escapedArgument .= '^%"'.substr($part, 1, -1).'"^%';
-                } else {
-                    // escape trailing backslash
-                    if ('\\' === substr($part, -1)) {
-                        $part .= '\\';
-                    }
-                    $quote = true;
-                    $escapedArgument .= $part;
-                }
-            }
-            if ($quote) {
-                $escapedArgument = '"'.$escapedArgument.'"';
-            }
-
-            return $escapedArgument;
-        }
-
-        return escapeshellarg($argument);
-    }
-
-    /**
-     * Validates and normalizes a Process input
-     *
-     * @param string $caller The name of method call that validates the input
-     * @param mixed  $input  The input to validate
-     *
-     * @return string The validated input
-     *
-     * @throws InvalidArgumentException In case the input is not valid
-     */
-    public static function validateInput($caller, $input)
-    {
-        if (null !== $input) {
-            if (is_scalar($input)) {
-                return (string) $input;
-            }
-            // deprecated as of Symfony 2.5, to be removed in 3.0
-            if (is_object($input) && method_exists($input, '__toString')) {
-                return (string) $input;
-            }
-
-            throw new InvalidArgumentException(sprintf('%s only accepts strings.', $caller));
-        }
-
-        return $input;
-    }
-
-    private static function isSurroundedBy($arg, $char)
-    {
-        return 2 < strlen($arg) && $char === $arg[0] && $char === $arg[strlen($arg) - 1];
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/README.md b/core/vendor/symfony/process/Symfony/Component/Process/README.md
deleted file mode 100644
index c7e2138..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/README.md
+++ /dev/null
@@ -1,47 +0,0 @@
-Process Component
-=================
-
-Process executes commands in sub-processes.
-
-In this example, we run a simple directory listing and get the result back:
-
-    use Symfony\Component\Process\Process;
-
-    $process = new Process('ls -lsa');
-    $process->setTimeout(3600);
-    $process->run();
-    if (!$process->isSuccessful()) {
-        throw new RuntimeException($process->getErrorOutput());
-    }
-
-    print $process->getOutput();
-
-You can think that this is easy to achieve with plain PHP but it's not especially
-if you want to take care of the subtle differences between the different platforms.
-
-And if you want to be able to get some feedback in real-time, just pass an
-anonymous function to the ``run()`` method and you will get the output buffer
-as it becomes available:
-
-    use Symfony\Component\Process\Process;
-
-    $process = new Process('ls -lsa');
-    $process->run(function ($type, $buffer) {
-        if (Process::ERR === $type) {
-            echo 'ERR > '.$buffer;
-        } else {
-            echo 'OUT > '.$buffer;
-        }
-    });
-
-That's great if you want to execute a long running command (like rsync-ing files to a
-remote server) and give feedback to the user in real-time.
-
-Resources
----------
-
-You can run the unit tests with the following command:
-
-    $ cd path/to/Symfony/Component/Process/
-    $ composer.phar install
-    $ phpunit
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/AbstractProcessTest.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/AbstractProcessTest.php
deleted file mode 100644
index c5737e1..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/AbstractProcessTest.php
+++ /dev/null
@@ -1,1104 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\Exception\ProcessTimedOutException;
-use Symfony\Component\Process\Exception\LogicException;
-use Symfony\Component\Process\Process;
-use Symfony\Component\Process\Exception\RuntimeException;
-use Symfony\Component\Process\ProcessPipes;
-
-/**
- * @author Robert Schönthal <seroscho@googlemail.com>
- */
-abstract class AbstractProcessTest extends \PHPUnit_Framework_TestCase
-{
-    public function testThatProcessDoesNotThrowWarningDuringRun()
-    {
-        @trigger_error('Test Error', E_USER_NOTICE);
-        $process = $this->getProcess("php -r 'sleep(3)'");
-        $process->run();
-        $actualError = error_get_last();
-        $this->assertEquals('Test Error', $actualError['message']);
-        $this->assertEquals(E_USER_NOTICE, $actualError['type']);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
-     */
-    public function testNegativeTimeoutFromConstructor()
-    {
-        $this->getProcess('', null, null, null, -1);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
-     */
-    public function testNegativeTimeoutFromSetter()
-    {
-        $p = $this->getProcess('');
-        $p->setTimeout(-1);
-    }
-
-    public function testFloatAndNullTimeout()
-    {
-        $p = $this->getProcess('');
-
-        $p->setTimeout(10);
-        $this->assertSame(10.0, $p->getTimeout());
-
-        $p->setTimeout(null);
-        $this->assertNull($p->getTimeout());
-
-        $p->setTimeout(0.0);
-        $this->assertNull($p->getTimeout());
-    }
-
-    public function testStopWithTimeoutIsActuallyWorking()
-    {
-        $this->verifyPosixIsEnabled();
-
-        // exec is mandatory here since we send a signal to the process
-        // see https://github.com/symfony/symfony/issues/5030 about prepending
-        // command with exec
-        $p = $this->getProcess('exec php '.__DIR__.'/NonStopableProcess.php 3');
-        $p->start();
-        usleep(100000);
-        $start = microtime(true);
-        $p->stop(1.1, SIGKILL);
-        while ($p->isRunning()) {
-            usleep(1000);
-        }
-        $duration = microtime(true) - $start;
-
-        $this->assertLessThan(1.8, $duration);
-    }
-
-    public function testAllOutputIsActuallyReadOnTermination()
-    {
-        // this code will result in a maximum of 2 reads of 8192 bytes by calling
-        // start() and isRunning().  by the time getOutput() is called the process
-        // has terminated so the internal pipes array is already empty. normally
-        // the call to start() will not read any data as the process will not have
-        // generated output, but this is non-deterministic so we must count it as
-        // a possibility.  therefore we need 2 * ProcessPipes::CHUNK_SIZE plus
-        // another byte which will never be read.
-        $expectedOutputSize = ProcessPipes::CHUNK_SIZE * 2 + 2;
-
-        $code = sprintf('echo str_repeat(\'*\', %d);', $expectedOutputSize);
-        $p = $this->getProcess(sprintf('php -r %s', escapeshellarg($code)));
-
-        $p->start();
-        // Let's wait enough time for process to finish...
-        // Here we don't call Process::run or Process::wait to avoid any read of pipes
-        usleep(500000);
-
-        if ($p->isRunning()) {
-            $this->markTestSkipped('Process execution did not complete in the required time frame');
-        }
-
-        $o = $p->getOutput();
-
-        $this->assertEquals($expectedOutputSize, strlen($o));
-    }
-
-    public function testCallbacksAreExecutedWithStart()
-    {
-        $data = '';
-
-        $process = $this->getProcess('echo foo && php -r "sleep(1);" && echo foo');
-        $process->start(function ($type, $buffer) use (&$data) {
-            $data .= $buffer;
-        });
-
-        while ($process->isRunning()) {
-            usleep(10000);
-        }
-
-        $this->assertEquals(2, preg_match_all('/foo/', $data, $matches));
-    }
-
-    /**
-     * tests results from sub processes
-     *
-     * @dataProvider responsesCodeProvider
-     */
-    public function testProcessResponses($expected, $getter, $code)
-    {
-        $p = $this->getProcess(sprintf('php -r %s', escapeshellarg($code)));
-        $p->run();
-
-        $this->assertSame($expected, $p->$getter());
-    }
-
-    /**
-     * tests results from sub processes
-     *
-     * @dataProvider pipesCodeProvider
-     */
-    public function testProcessPipes($code, $size)
-    {
-        $expected = str_repeat(str_repeat('*', 1024), $size).'!';
-        $expectedLength = (1024 * $size) + 1;
-
-        $p = $this->getProcess(sprintf('php -r %s', escapeshellarg($code)));
-        $p->setInput($expected);
-        $p->run();
-
-        $this->assertEquals($expectedLength, strlen($p->getOutput()));
-        $this->assertEquals($expectedLength, strlen($p->getErrorOutput()));
-    }
-
-    public function testSetInputWhileRunningThrowsAnException()
-    {
-        $process = $this->getProcess('php -r "usleep(500000);"');
-        $process->start();
-        try {
-            $process->setInput('foobar');
-            $process->stop();
-            $this->fail('A LogicException should have been raised.');
-        } catch (LogicException $e) {
-            $this->assertEquals('Input can not be set while the process is running.', $e->getMessage());
-        }
-        $process->stop();
-    }
-
-    /**
-     * @dataProvider provideInvalidInputValues
-     * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
-     * @expectedExceptionMessage Symfony\Component\Process\Process::setInput only accepts strings.
-     */
-    public function testInvalidInput($value)
-    {
-        $process = $this->getProcess('php -v');
-        $process->setInput($value);
-    }
-
-    public function provideInvalidInputValues()
-    {
-        return array(
-            array(array()),
-            array(new NonStringifiable()),
-            array(fopen('php://temporary', 'w')),
-        );
-    }
-
-    /**
-     * @dataProvider provideInputValues
-     */
-    public function testValidInput($expected, $value)
-    {
-        $process = $this->getProcess('php -v');
-        $process->setInput($value);
-        $this->assertSame($expected, $process->getInput());
-    }
-
-    public function provideInputValues()
-    {
-        return array(
-            array(null, null),
-            array('24.5', 24.5),
-            array('input data', 'input data'),
-            // to maintain BC, supposed to be removed in 3.0
-            array('stringifiable', new Stringifiable()),
-        );
-    }
-
-    public function chainedCommandsOutputProvider()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            return array(
-                array("2 \r\n2\r\n", '&&', '2'),
-            );
-        }
-
-        return array(
-            array("1\n1\n", ';', '1'),
-            array("2\n2\n", '&&', '2'),
-        );
-    }
-
-    /**
-     *
-     * @dataProvider chainedCommandsOutputProvider
-     */
-    public function testChainedCommandsOutput($expected, $operator, $input)
-    {
-        $process = $this->getProcess(sprintf('echo %s %s echo %s', $input, $operator, $input));
-        $process->run();
-        $this->assertEquals($expected, $process->getOutput());
-    }
-
-    public function testCallbackIsExecutedForOutput()
-    {
-        $p = $this->getProcess(sprintf('php -r %s', escapeshellarg('echo \'foo\';')));
-
-        $called = false;
-        $p->run(function ($type, $buffer) use (&$called) {
-            $called = $buffer === 'foo';
-        });
-
-        $this->assertTrue($called, 'The callback should be executed with the output');
-    }
-
-    public function testGetErrorOutput()
-    {
-        $p = $this->getProcess(sprintf('php -r %s', escapeshellarg('$n = 0; while ($n < 3) { file_put_contents(\'php://stderr\', \'ERROR\'); $n++; }')));
-
-        $p->run();
-        $this->assertEquals(3, preg_match_all('/ERROR/', $p->getErrorOutput(), $matches));
-    }
-
-    public function testGetIncrementalErrorOutput()
-    {
-        // use a lock file to toggle between writing ("W") and reading ("R") the
-        // error stream
-        $lock = tempnam(sys_get_temp_dir(), get_class($this).'Lock');
-        file_put_contents($lock, 'W');
-
-        $p = $this->getProcess(sprintf('php -r %s', escapeshellarg('$n = 0; while ($n < 3) { if (\'W\' === file_get_contents('.var_export($lock, true).')) { file_put_contents(\'php://stderr\', \'ERROR\'); $n++; file_put_contents('.var_export($lock, true).', \'R\'); } usleep(100); }')));
-
-        $p->start();
-        while ($p->isRunning()) {
-            if ('R' === file_get_contents($lock)) {
-                $this->assertLessThanOrEqual(1, preg_match_all('/ERROR/', $p->getIncrementalErrorOutput(), $matches));
-                file_put_contents($lock, 'W');
-            }
-            usleep(100);
-        }
-
-        unlink($lock);
-    }
-
-    public function testFlushErrorOutput()
-    {
-        $p = $this->getProcess(sprintf('php -r %s', escapeshellarg('$n = 0; while ($n < 3) { file_put_contents(\'php://stderr\', \'ERROR\'); $n++; }')));
-
-        $p->run();
-        $p->clearErrorOutput();
-        $this->assertEmpty($p->getErrorOutput());
-    }
-
-    public function testGetOutput()
-    {
-        $p = $this->getProcess(sprintf('php -r %s', escapeshellarg('$n = 0; while ($n < 3) { echo \' foo \'; $n++; }')));
-
-        $p->run();
-        $this->assertEquals(3, preg_match_all('/foo/', $p->getOutput(), $matches));
-    }
-
-    public function testGetIncrementalOutput()
-    {
-        // use a lock file to toggle between writing ("W") and reading ("R") the
-        // output stream
-        $lock = tempnam(sys_get_temp_dir(), get_class($this).'Lock');
-        file_put_contents($lock, 'W');
-
-        $p = $this->getProcess(sprintf('php -r %s', escapeshellarg('$n = 0; while ($n < 3) { if (\'W\' === file_get_contents('.var_export($lock, true).')) { echo \' foo \'; $n++; file_put_contents('.var_export($lock, true).', \'R\'); } usleep(100); }')));
-
-        $p->start();
-        while ($p->isRunning()) {
-            if ('R' === file_get_contents($lock)) {
-                $this->assertLessThanOrEqual(1, preg_match_all('/foo/', $p->getIncrementalOutput(), $matches));
-                file_put_contents($lock, 'W');
-            }
-            usleep(100);
-        }
-
-        unlink($lock);
-    }
-
-    public function testFlushOutput()
-    {
-        $p = $this->getProcess(sprintf('php -r %s', escapeshellarg('$n=0;while ($n<3) {echo \' foo \';$n++;}')));
-
-        $p->run();
-        $p->clearOutput();
-        $this->assertEmpty($p->getOutput());
-    }
-
-    public function testZeroAsOutput()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            // see http://stackoverflow.com/questions/7105433/windows-batch-echo-without-new-line
-            $p = $this->getProcess('echo | set /p dummyName=0');
-        } else {
-            $p = $this->getProcess('printf 0');
-        }
-
-        $p->run();
-        $this->assertSame('0', $p->getOutput());
-    }
-
-    public function testExitCodeCommandFailed()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('Windows does not support POSIX exit code');
-        }
-
-        // such command run in bash return an exitcode 127
-        $process = $this->getProcess('nonexistingcommandIhopeneversomeonewouldnameacommandlikethis');
-        $process->run();
-
-        $this->assertGreaterThan(0, $process->getExitCode());
-    }
-
-    public function testTTYCommand()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('Windows does have /dev/tty support');
-        }
-
-        $process = $this->getProcess('echo "foo" >> /dev/null && php -r "usleep(100000);"');
-        $process->setTty(true);
-        $process->start();
-        $this->assertTrue($process->isRunning());
-        $process->wait();
-
-        $this->assertSame(Process::STATUS_TERMINATED, $process->getStatus());
-    }
-
-    public function testTTYCommandExitCode()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('Windows does have /dev/tty support');
-        }
-
-        $process = $this->getProcess('echo "foo" >> /dev/null');
-        $process->setTty(true);
-        $process->run();
-
-        $this->assertTrue($process->isSuccessful());
-    }
-
-    public function testTTYInWindowsEnvironment()
-    {
-        if (!defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('This test is for Windows platform only');
-        }
-
-        $process = $this->getProcess('echo "foo" >> /dev/null');
-        $process->setTty(false);
-        $this->setExpectedException('Symfony\Component\Process\Exception\RuntimeException', 'TTY mode is not supported on Windows platform.');
-        $process->setTty(true);
-    }
-
-    public function testExitCodeTextIsNullWhenExitCodeIsNull()
-    {
-        $process = $this->getProcess('');
-        $this->assertNull($process->getExitCodeText());
-    }
-
-    public function testPTYCommand()
-    {
-        if (!Process::isPtySupported()) {
-            $this->markTestSkipped('PTY is not supported on this operating system.');
-        }
-
-        $process = $this->getProcess('echo "foo"');
-        $process->setPty(true);
-        $process->run();
-
-        $this->assertSame(Process::STATUS_TERMINATED, $process->getStatus());
-        $this->assertEquals("foo\r\n", $process->getOutput());
-    }
-
-    public function testMustRun()
-    {
-        $process = $this->getProcess('echo foo');
-
-        $this->assertSame($process, $process->mustRun());
-        $this->assertEquals("foo".PHP_EOL, $process->getOutput());
-    }
-
-    public function testSuccessfulMustRunHasCorrectExitCode()
-    {
-        $process = $this->getProcess('echo foo')->mustRun();
-        $this->assertEquals(0, $process->getExitCode());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\ProcessFailedException
-     */
-    public function testMustRunThrowsException()
-    {
-        $process = $this->getProcess('exit 1');
-        $process->mustRun();
-    }
-
-    public function testExitCodeText()
-    {
-        $process = $this->getProcess('');
-        $r = new \ReflectionObject($process);
-        $p = $r->getProperty('exitcode');
-        $p->setAccessible(true);
-
-        $p->setValue($process, 2);
-        $this->assertEquals('Misuse of shell builtins', $process->getExitCodeText());
-    }
-
-    public function testStartIsNonBlocking()
-    {
-        $process = $this->getProcess('php -r "usleep(500000);"');
-        $start = microtime(true);
-        $process->start();
-        $end = microtime(true);
-        $this->assertLessThan(0.2, $end-$start);
-        $process->wait();
-    }
-
-    public function testUpdateStatus()
-    {
-        $process = $this->getProcess('php -h');
-        $process->run();
-        $this->assertTrue(strlen($process->getOutput()) > 0);
-    }
-
-    public function testGetExitCodeIsNullOnStart()
-    {
-        $process = $this->getProcess('php -r "usleep(200000);"');
-        $this->assertNull($process->getExitCode());
-        $process->start();
-        $this->assertNull($process->getExitCode());
-        $process->wait();
-        $this->assertEquals(0, $process->getExitCode());
-    }
-
-    public function testGetExitCodeIsNullOnWhenStartingAgain()
-    {
-        $process = $this->getProcess('php -r "usleep(200000);"');
-        $process->run();
-        $this->assertEquals(0, $process->getExitCode());
-        $process->start();
-        $this->assertNull($process->getExitCode());
-        $process->wait();
-        $this->assertEquals(0, $process->getExitCode());
-    }
-
-    public function testGetExitCode()
-    {
-        $process = $this->getProcess('php -m');
-        $process->run();
-        $this->assertSame(0, $process->getExitCode());
-    }
-
-    public function testStatus()
-    {
-        $process = $this->getProcess('php -r "usleep(500000);"');
-        $this->assertFalse($process->isRunning());
-        $this->assertFalse($process->isStarted());
-        $this->assertFalse($process->isTerminated());
-        $this->assertSame(Process::STATUS_READY, $process->getStatus());
-        $process->start();
-        $this->assertTrue($process->isRunning());
-        $this->assertTrue($process->isStarted());
-        $this->assertFalse($process->isTerminated());
-        $this->assertSame(Process::STATUS_STARTED, $process->getStatus());
-        $process->wait();
-        $this->assertFalse($process->isRunning());
-        $this->assertTrue($process->isStarted());
-        $this->assertTrue($process->isTerminated());
-        $this->assertSame(Process::STATUS_TERMINATED, $process->getStatus());
-    }
-
-    public function testStop()
-    {
-        $process = $this->getProcess('php -r "sleep(4);"');
-        $process->start();
-        $this->assertTrue($process->isRunning());
-        $process->stop();
-        $this->assertFalse($process->isRunning());
-    }
-
-    public function testIsSuccessful()
-    {
-        $process = $this->getProcess('php -m');
-        $process->run();
-        $this->assertTrue($process->isSuccessful());
-    }
-
-    public function testIsSuccessfulOnlyAfterTerminated()
-    {
-        $process = $this->getProcess('php -r "sleep(1);"');
-        $process->start();
-        while ($process->isRunning()) {
-            $this->assertFalse($process->isSuccessful());
-            usleep(300000);
-        }
-
-        $this->assertTrue($process->isSuccessful());
-    }
-
-    public function testIsNotSuccessful()
-    {
-        $process = $this->getProcess('php -r "usleep(500000);throw new \Exception(\'BOUM\');"');
-        $process->start();
-        $this->assertTrue($process->isRunning());
-        $process->wait();
-        $this->assertFalse($process->isSuccessful());
-    }
-
-    public function testProcessIsNotSignaled()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('Windows does not support POSIX signals');
-        }
-
-        $process = $this->getProcess('php -m');
-        $process->run();
-        $this->assertFalse($process->hasBeenSignaled());
-    }
-
-    public function testProcessWithoutTermSignalIsNotSignaled()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('Windows does not support POSIX signals');
-        }
-
-        $process = $this->getProcess('php -m');
-        $process->run();
-        $this->assertFalse($process->hasBeenSignaled());
-    }
-
-    public function testProcessWithoutTermSignal()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('Windows does not support POSIX signals');
-        }
-
-        $process = $this->getProcess('php -m');
-        $process->run();
-        $this->assertEquals(0, $process->getTermSignal());
-    }
-
-    public function testProcessIsSignaledIfStopped()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('Windows does not support POSIX signals');
-        }
-
-        $process = $this->getProcess('php -r "sleep(4);"');
-        $process->start();
-        $process->stop();
-        $this->assertTrue($process->hasBeenSignaled());
-    }
-
-    public function testProcessWithTermSignal()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('Windows does not support POSIX signals');
-        }
-
-        // SIGTERM is only defined if pcntl extension is present
-        $termSignal = defined('SIGTERM') ? SIGTERM : 15;
-
-        $process = $this->getProcess('php -r "sleep(4);"');
-        $process->start();
-        $process->stop();
-
-        $this->assertEquals($termSignal, $process->getTermSignal());
-    }
-
-    public function testProcessThrowsExceptionWhenExternallySignaled()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('Windows does not support POSIX signals');
-        }
-
-        if (!function_exists('posix_kill')) {
-            $this->markTestSkipped('posix_kill is required for this test');
-        }
-
-        $termSignal = defined('SIGKILL') ? SIGKILL : 9;
-
-        $process = $this->getProcess('exec php -r "while (true) {}"');
-        $process->start();
-        posix_kill($process->getPid(), $termSignal);
-
-        $this->setExpectedException('Symfony\Component\Process\Exception\RuntimeException', 'The process has been signaled with signal "9".');
-        $process->wait();
-    }
-
-    public function testRestart()
-    {
-        $process1 = $this->getProcess('php -r "echo getmypid();"');
-        $process1->run();
-        $process2 = $process1->restart();
-
-        $process2->wait(); // wait for output
-
-        // Ensure that both processed finished and the output is numeric
-        $this->assertFalse($process1->isRunning());
-        $this->assertFalse($process2->isRunning());
-        $this->assertTrue(is_numeric($process1->getOutput()));
-        $this->assertTrue(is_numeric($process2->getOutput()));
-
-        // Ensure that restart returned a new process by check that the output is different
-        $this->assertNotEquals($process1->getOutput(), $process2->getOutput());
-    }
-
-    public function testPhpDeadlock()
-    {
-        $this->markTestSkipped('Can cause PHP to hang');
-
-        // Sleep doesn't work as it will allow the process to handle signals and close
-        // file handles from the other end.
-        $process = $this->getProcess('php -r "while (true) {}"');
-        $process->start();
-
-        // PHP will deadlock when it tries to cleanup $process
-    }
-
-    public function testRunProcessWithTimeout()
-    {
-        $timeout = 0.5;
-        $process = $this->getProcess('php -r "usleep(600000);"');
-        $process->setTimeout($timeout);
-        $start = microtime(true);
-        try {
-            $process->run();
-            $this->fail('A RuntimeException should have been raised');
-        } catch (RuntimeException $e) {
-        }
-        $duration = microtime(true) - $start;
-
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            // Windows is a bit slower as it read file handles, then allow twice the precision
-            $maxDuration = $timeout + 2 * Process::TIMEOUT_PRECISION;
-        } else {
-            $maxDuration = $timeout + Process::TIMEOUT_PRECISION;
-        }
-
-        $this->assertLessThan($maxDuration, $duration);
-    }
-
-    public function testCheckTimeoutOnNonStartedProcess()
-    {
-        $process = $this->getProcess('php -r "sleep(3);"');
-        $process->checkTimeout();
-    }
-
-    public function testCheckTimeoutOnTerminatedProcess()
-    {
-        $process = $this->getProcess('php -v');
-        $process->run();
-        $process->checkTimeout();
-    }
-
-    public function testCheckTimeoutOnStartedProcess()
-    {
-        $timeout = 0.5;
-        $precision = 100000;
-        $process = $this->getProcess('php -r "sleep(3);"');
-        $process->setTimeout($timeout);
-        $start = microtime(true);
-
-        $process->start();
-
-        try {
-            while ($process->isRunning()) {
-                $process->checkTimeout();
-                usleep($precision);
-            }
-            $this->fail('A RuntimeException should have been raised');
-        } catch (RuntimeException $e) {
-        }
-        $duration = microtime(true) - $start;
-
-        $this->assertLessThan($timeout + $precision, $duration);
-        $this->assertFalse($process->isSuccessful());
-    }
-
-    /**
-     * @group idle-timeout
-     */
-    public function testIdleTimeout()
-    {
-        $process = $this->getProcess('php -r "sleep(3);"');
-        $process->setTimeout(10);
-        $process->setIdleTimeout(0.5);
-
-        try {
-            $process->run();
-
-            $this->fail('A timeout exception was expected.');
-        } catch (ProcessTimedOutException $ex) {
-            $this->assertTrue($ex->isIdleTimeout());
-            $this->assertFalse($ex->isGeneralTimeout());
-            $this->assertEquals(0.5, $ex->getExceededTimeout());
-        }
-    }
-
-    /**
-     * @group idle-timeout
-     */
-    public function testIdleTimeoutNotExceededWhenOutputIsSent()
-    {
-        $process = $this->getProcess('php -r "echo \'foo\'; sleep(1); echo \'foo\'; sleep(1); echo \'foo\'; sleep(1); "');
-        $process->setTimeout(2);
-        $process->setIdleTimeout(1.5);
-
-        try {
-            $process->run();
-            $this->fail('A timeout exception was expected.');
-        } catch (ProcessTimedOutException $ex) {
-            $this->assertTrue($ex->isGeneralTimeout());
-            $this->assertFalse($ex->isIdleTimeout());
-            $this->assertEquals(2, $ex->getExceededTimeout());
-        }
-    }
-
-    public function testStartAfterATimeout()
-    {
-        $process = $this->getProcess('php -r "$n = 1000; while ($n--) {echo \'\'; usleep(1000); }"');
-        $process->setTimeout(0.1);
-
-        try {
-            $process->run();
-            $this->fail('An exception should have been raised.');
-        } catch (\Exception $e) {
-        }
-        $process->start();
-        usleep(1000);
-        $process->stop();
-    }
-
-    public function testGetPid()
-    {
-        $process = $this->getProcess('php -r "usleep(500000);"');
-        $process->start();
-        $this->assertGreaterThan(0, $process->getPid());
-        $process->wait();
-    }
-
-    public function testGetPidIsNullBeforeStart()
-    {
-        $process = $this->getProcess('php -r "sleep(1);"');
-        $this->assertNull($process->getPid());
-    }
-
-    public function testGetPidIsNullAfterRun()
-    {
-        $process = $this->getProcess('php -m');
-        $process->run();
-        $this->assertNull($process->getPid());
-    }
-
-    public function testSignal()
-    {
-        $this->verifyPosixIsEnabled();
-
-        $process = $this->getProcess('exec php -f '.__DIR__.'/SignalListener.php');
-        $process->start();
-        usleep(500000);
-        $process->signal(SIGUSR1);
-
-        while ($process->isRunning() && false === strpos($process->getOutput(), 'Caught SIGUSR1')) {
-            usleep(10000);
-        }
-
-        $this->assertEquals('Caught SIGUSR1', $process->getOutput());
-    }
-
-    public function testExitCodeIsAvailableAfterSignal()
-    {
-        $this->verifyPosixIsEnabled();
-
-        $process = $this->getProcess('sleep 4');
-        $process->start();
-        $process->signal(SIGKILL);
-
-        while ($process->isRunning()) {
-            usleep(10000);
-        }
-
-        $this->assertFalse($process->isRunning());
-        $this->assertTrue($process->hasBeenSignaled());
-        $this->assertFalse($process->isSuccessful());
-        $this->assertEquals(137, $process->getExitCode());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\LogicException
-     */
-    public function testSignalProcessNotRunning()
-    {
-        $this->verifyPosixIsEnabled();
-        $process = $this->getProcess('php -m');
-        $process->signal(SIGHUP);
-    }
-
-    /**
-     * @dataProvider provideMethodsThatNeedARunningProcess
-     */
-    public function testMethodsThatNeedARunningProcess($method)
-    {
-        $process = $this->getProcess('php -m');
-        $this->setExpectedException('Symfony\Component\Process\Exception\LogicException', sprintf('Process must be started before calling %s.', $method));
-        call_user_func(array($process, $method));
-    }
-
-    public function provideMethodsThatNeedARunningProcess()
-    {
-        return array(
-            array('getOutput'),
-            array('getIncrementalOutput'),
-            array('getErrorOutput'),
-            array('getIncrementalErrorOutput'),
-            array('wait'),
-        );
-    }
-
-    /**
-     * @dataProvider provideMethodsThatNeedATerminatedProcess
-     */
-    public function testMethodsThatNeedATerminatedProcess($method)
-    {
-        $process = $this->getProcess('php -r "sleep(1);"');
-        $process->start();
-        try {
-            call_user_func(array($process, $method));
-            $process->stop(0);
-            $this->fail('A LogicException must have been thrown');
-        } catch (\Exception $e) {
-            $this->assertInstanceOf('Symfony\Component\Process\Exception\LogicException', $e);
-            $this->assertEquals(sprintf('Process must be terminated before calling %s.', $method), $e->getMessage());
-        }
-        $process->stop(0);
-    }
-
-    public function provideMethodsThatNeedATerminatedProcess()
-    {
-        return array(
-            array('hasBeenSignaled'),
-            array('getTermSignal'),
-            array('hasBeenStopped'),
-            array('getStopSignal'),
-        );
-    }
-
-    private function verifyPosixIsEnabled()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('POSIX signals do not work on Windows');
-        }
-        if (!defined('SIGUSR1')) {
-            $this->markTestSkipped('The pcntl extension is not enabled');
-        }
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     */
-    public function testSignalWithWrongIntSignal()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('POSIX signals do not work on Windows');
-        }
-
-        $process = $this->getProcess('php -r "sleep(3);"');
-        $process->start();
-        $process->signal(-4);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     */
-    public function testSignalWithWrongNonIntSignal()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('POSIX signals do not work on Windows');
-        }
-
-        $process = $this->getProcess('php -r "sleep(3);"');
-        $process->start();
-        $process->signal('Céphalopodes');
-    }
-
-    public function testDisableOutputDisablesTheOutput()
-    {
-        $p = $this->getProcess('php -r "usleep(500000);"');
-        $this->assertFalse($p->isOutputDisabled());
-        $p->disableOutput();
-        $this->assertTrue($p->isOutputDisabled());
-        $p->enableOutput();
-        $this->assertFalse($p->isOutputDisabled());
-    }
-
-    public function testDisableOutputWhileRunningThrowsException()
-    {
-        $p = $this->getProcess('php -r "usleep(500000);"');
-        $p->start();
-        $this->setExpectedException('Symfony\Component\Process\Exception\RuntimeException', 'Disabling output while the process is running is not possible.');
-        $p->disableOutput();
-    }
-
-    public function testEnableOutputWhileRunningThrowsException()
-    {
-        $p = $this->getProcess('php -r "usleep(500000);"');
-        $p->disableOutput();
-        $p->start();
-        $this->setExpectedException('Symfony\Component\Process\Exception\RuntimeException', 'Enabling output while the process is running is not possible.');
-        $p->enableOutput();
-    }
-
-    public function testEnableOrDisableOutputAfterRunDoesNotThrowException()
-    {
-        $p = $this->getProcess('php -r "usleep(500000);"');
-        $p->disableOutput();
-        $p->start();
-        $p->wait();
-        $p->enableOutput();
-        $p->disableOutput();
-    }
-
-    public function testDisableOutputWhileIdleTimeoutIsSet()
-    {
-        $process = $this->getProcess('sleep 3');
-        $process->setIdleTimeout(1);
-        $this->setExpectedException('Symfony\Component\Process\Exception\LogicException', 'Output can not be disabled while an idle timeout is set.');
-        $process->disableOutput();
-    }
-
-    public function testSetIdleTimeoutWhileOutputIsDisabled()
-    {
-        $process = $this->getProcess('sleep 3');
-        $process->disableOutput();
-        $this->setExpectedException('Symfony\Component\Process\Exception\LogicException', 'Idle timeout can not be set while the output is disabled.');
-        $process->setIdleTimeout(1);
-    }
-
-    public function testSetNullIdleTimeoutWhileOutputIsDisabled()
-    {
-        $process = $this->getProcess('sleep 3');
-        $process->disableOutput();
-        $process->setIdleTimeout(null);
-    }
-
-    /**
-     * @dataProvider provideStartMethods
-     */
-    public function testStartWithACallbackAndDisabledOutput($startMethod, $exception, $exceptionMessage)
-    {
-        $p = $this->getProcess('php -r "usleep(500000);"');
-        $p->disableOutput();
-        $this->setExpectedException($exception, $exceptionMessage);
-        call_user_func(array($p, $startMethod), function () {});
-    }
-
-    public function provideStartMethods()
-    {
-        return array(
-            array('start', 'Symfony\Component\Process\Exception\LogicException', 'Output has been disabled, enable it to allow the use of a callback.'),
-            array('run', 'Symfony\Component\Process\Exception\LogicException', 'Output has been disabled, enable it to allow the use of a callback.'),
-            array('mustRun', 'Symfony\Component\Process\Exception\LogicException', 'Output has been disabled, enable it to allow the use of a callback.'),
-        );
-    }
-
-    /**
-     * @dataProvider provideOutputFetchingMethods
-     */
-    public function testGetOutputWhileDisabled($fetchMethod)
-    {
-        $p = $this->getProcess('php -r "usleep(500000);"');
-        $p->disableOutput();
-        $p->start();
-        $this->setExpectedException('Symfony\Component\Process\Exception\LogicException', 'Output has been disabled.');
-        call_user_func(array($p, $fetchMethod));
-    }
-
-    public function provideOutputFetchingMethods()
-    {
-        return array(
-            array('getOutput'),
-            array('getIncrementalOutput'),
-            array('getErrorOutput'),
-            array('getIncrementalErrorOutput'),
-        );
-    }
-
-    public function responsesCodeProvider()
-    {
-        return array(
-            //expected output / getter / code to execute
-            //array(1,'getExitCode','exit(1);'),
-            //array(true,'isSuccessful','exit();'),
-            array('output', 'getOutput', 'echo \'output\';'),
-        );
-    }
-
-    public function pipesCodeProvider()
-    {
-        $variations = array(
-            'fwrite(STDOUT, $in = file_get_contents(\'php://stdin\')); fwrite(STDERR, $in);',
-            'include \''.__DIR__.'/PipeStdinInStdoutStdErrStreamSelect.php\';',
-        );
-
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            // Avoid XL buffers on Windows because of https://bugs.php.net/bug.php?id=65650
-            $sizes = array(1, 2, 4, 8);
-        } else {
-            $sizes = array(1, 16, 64, 1024, 4096);
-        }
-
-        $codes = array();
-        foreach ($sizes as $size) {
-            foreach ($variations as $code) {
-                $codes[] = array($code, $size);
-            }
-        }
-
-        return $codes;
-    }
-
-    /**
-     * provides default method names for simple getter/setter
-     */
-    public function methodProvider()
-    {
-        $defaults = array(
-            array('CommandLine'),
-            array('Timeout'),
-            array('WorkingDirectory'),
-            array('Env'),
-            array('Stdin'),
-            array('Input'),
-            array('Options'),
-        );
-
-        return $defaults;
-    }
-
-    /**
-     * @param string         $commandline
-     * @param null|string    $cwd
-     * @param null|array     $env
-     * @param null|string    $input
-     * @param int            $timeout
-     * @param array          $options
-     *
-     * @return Process
-     */
-    abstract protected function getProcess($commandline, $cwd = null, array $env = null, $input = null, $timeout = 60, array $options = array());
-}
-
-class Stringifiable
-{
-    public function __toString()
-    {
-        return 'stringifiable';
-    }
-}
-
-class NonStringifiable
-{
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/ExecutableFinderTest.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/ExecutableFinderTest.php
deleted file mode 100644
index 5fbe1e0..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/ExecutableFinderTest.php
+++ /dev/null
@@ -1,147 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\ExecutableFinder;
-
-/**
- * @author Chris Smith <chris@cs278.org>
- */
-class ExecutableFinderTest extends \PHPUnit_Framework_TestCase
-{
-    private $path;
-
-    public function tearDown()
-    {
-        if ($this->path) {
-            // Restore path if it was changed.
-            putenv('PATH='.$this->path);
-        }
-    }
-
-    private function setPath($path)
-    {
-        $this->path = getenv('PATH');
-        putenv('PATH='.$path);
-    }
-
-    public function testFind()
-    {
-        if (!defined('PHP_BINARY')) {
-            $this->markTestSkipped('Requires the PHP_BINARY constant');
-        }
-
-        if (ini_get('open_basedir')) {
-            $this->markTestSkipped('Cannot test when open_basedir is set');
-        }
-
-        $this->setPath(dirname(PHP_BINARY));
-
-        $finder = new ExecutableFinder();
-        $result = $finder->find($this->getPhpBinaryName());
-
-        $this->assertSamePath(PHP_BINARY, $result);
-    }
-
-    public function testFindWithDefault()
-    {
-        if (ini_get('open_basedir')) {
-            $this->markTestSkipped('Cannot test when open_basedir is set');
-        }
-
-        $expected = 'defaultValue';
-
-        $this->setPath('');
-
-        $finder = new ExecutableFinder();
-        $result = $finder->find('foo', $expected);
-
-        $this->assertEquals($expected, $result);
-    }
-
-    public function testFindWithExtraDirs()
-    {
-        if (!defined('PHP_BINARY')) {
-            $this->markTestSkipped('Requires the PHP_BINARY constant');
-        }
-
-        if (ini_get('open_basedir')) {
-            $this->markTestSkipped('Cannot test when open_basedir is set');
-        }
-
-        $this->setPath('');
-
-        $extraDirs = array(dirname(PHP_BINARY));
-
-        $finder = new ExecutableFinder();
-        $result = $finder->find($this->getPhpBinaryName(), null, $extraDirs);
-
-        $this->assertSamePath(PHP_BINARY, $result);
-    }
-
-    public function testFindWithOpenBaseDir()
-    {
-        if (!defined('PHP_BINARY')) {
-            $this->markTestSkipped('Requires the PHP_BINARY constant');
-        }
-
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('Cannot run test on windows');
-        }
-
-        if (ini_get('open_basedir')) {
-            $this->markTestSkipped('Cannot test when open_basedir is set');
-        }
-
-        ini_set('open_basedir', dirname(PHP_BINARY).PATH_SEPARATOR.'/');
-
-        $finder = new ExecutableFinder();
-        $result = $finder->find($this->getPhpBinaryName());
-
-        $this->assertSamePath(PHP_BINARY, $result);
-    }
-
-    public function testFindProcessInOpenBasedir()
-    {
-        if (ini_get('open_basedir')) {
-            $this->markTestSkipped('Cannot test when open_basedir is set');
-        }
-
-        if (!defined('PHP_BINARY')) {
-            $this->markTestSkipped('Requires the PHP_BINARY constant');
-        }
-
-        $execPath = __DIR__.'/SignalListener.php';
-
-        $this->setPath('');
-        ini_set('open_basedir', PHP_BINARY.PATH_SEPARATOR.'/');
-
-        $finder = new ExecutableFinder();
-        $result = $finder->find($this->getPhpBinaryName(), false);
-
-        $this->assertSamePath(PHP_BINARY, $result);
-    }
-
-    private function assertSamePath($expected, $tested)
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->assertEquals(strtolower($expected), strtolower($tested));
-        } else {
-            $this->assertEquals($expected, $tested);
-        }
-    }
-
-    private function getPhpBinaryName()
-    {
-        return basename(PHP_BINARY, defined('PHP_WINDOWS_VERSION_BUILD') ? '.exe' : '');
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/NonStopableProcess.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/NonStopableProcess.php
deleted file mode 100644
index 2183e48..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/NonStopableProcess.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/**
- * Runs a PHP script that can be stopped only with a SIGKILL (9) signal for 3 seconds
- *
- * @args duration Run this script with a custom duration
- *
- * @example `php NonStopableProcess.php 42` will run the script for 42 seconds
- */
-
-function handleSignal($signal)
-{
-    switch ($signal) {
-        case SIGTERM:
-            $name = 'SIGTERM';
-            break;
-        case SIGINT:
-            $name = 'SIGINT';
-            break;
-        default:
-            $name = $signal.' (unknown)';
-            break;
-    }
-
-    echo "received signal $name\n";
-}
-
-declare (ticks = 1);
-pcntl_signal(SIGTERM, 'handleSignal');
-pcntl_signal(SIGINT, 'handleSignal');
-
-$duration = isset($argv[1]) ? (int) $argv[1] : 3;
-$start = microtime(true);
-
-while ($duration > (microtime(true) - $start)) {
-    usleep(1000);
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/PhpExecutableFinderTest.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/PhpExecutableFinderTest.php
deleted file mode 100644
index e16f3f8..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/PhpExecutableFinderTest.php
+++ /dev/null
@@ -1,97 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\PhpExecutableFinder;
-
-/**
- * @author Robert Schönthal <seroscho@googlemail.com>
- */
-class PhpExecutableFinderTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * tests find() with the env var PHP_PATH
-     */
-    public function testFindWithPhpPath()
-    {
-        if (defined('PHP_BINARY')) {
-            $this->markTestSkipped('The PHP binary is easily available as of PHP 5.4');
-        }
-
-        $f = new PhpExecutableFinder();
-
-        $current = $f->find();
-
-        //not executable PHP_PATH
-        putenv('PHP_PATH=/not/executable/php');
-        $this->assertFalse($f->find(), '::find() returns false for not executable PHP');
-        $this->assertFalse($f->find(false), '::find() returns false for not executable PHP');
-
-        //executable PHP_PATH
-        putenv('PHP_PATH='.$current);
-        $this->assertEquals($f->find(), $current, '::find() returns the executable PHP');
-        $this->assertEquals($f->find(false), $current, '::find() returns the executable PHP');
-    }
-
-    /**
-     * tests find() with the env var PHP_PATH
-     */
-    public function testFindWithHHVM()
-    {
-        if (!defined('HHVM_VERSION')) {
-            $this->markTestSkipped('Should be executed in HHVM context.');
-        }
-
-        $f = new PhpExecutableFinder();
-
-        $current = $f->find();
-
-        $this->assertEquals($f->find(), $current.' --php', '::find() returns the executable PHP');
-        $this->assertEquals($f->find(false), $current, '::find() returns the executable PHP');
-    }
-
-    /**
-     * tests find() with the env var PHP_PATH
-     */
-    public function testFindArguments()
-    {
-        $f = new PhpExecutableFinder();
-
-        if (defined('HHVM_VERSION')) {
-            $this->assertEquals($f->findArguments(), array('--php'), '::findArguments() returns HHVM arguments');
-        } else {
-            $this->assertEquals($f->findArguments(), array(), '::findArguments() returns no arguments');
-        }
-    }
-
-    /**
-     * tests find() with default executable
-     */
-    public function testFindWithSuffix()
-    {
-        if (defined('PHP_BINARY')) {
-            $this->markTestSkipped('The PHP binary is easily available as of PHP 5.4');
-        }
-
-        putenv('PHP_PATH=');
-        putenv('PHP_PEAR_PHP_BIN=');
-        $f = new PhpExecutableFinder();
-
-        $current = $f->find();
-
-        //TODO maybe php executable is custom or even Windows
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->assertTrue(is_executable($current));
-            $this->assertTrue((bool) preg_match('/'.addSlashes(DIRECTORY_SEPARATOR).'php\.(exe|bat|cmd|com)$/i', $current), '::find() returns the executable PHP with suffixes');
-        }
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/PhpProcessTest.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/PhpProcessTest.php
deleted file mode 100644
index df66ad6..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/PhpProcessTest.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\PhpProcess;
-
-class PhpProcessTest extends \PHPUnit_Framework_TestCase
-{
-    public function testNonBlockingWorks()
-    {
-        $expected = 'hello world!';
-        $process = new PhpProcess(<<<PHP
-<?php echo '$expected';
-PHP
-        );
-        $process->start();
-        $process->wait();
-        $this->assertEquals($expected, $process->getOutput());
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/PipeStdinInStdoutStdErrStreamSelect.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/PipeStdinInStdoutStdErrStreamSelect.php
deleted file mode 100644
index 89d1f6a..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/PipeStdinInStdoutStdErrStreamSelect.php
+++ /dev/null
@@ -1,63 +0,0 @@
-<?php
-
-define('ERR_SELECT_FAILED', 1);
-define('ERR_TIMEOUT', 2);
-define('ERR_READ_FAILED', 3);
-define('ERR_WRITE_FAILED', 4);
-
-$read = array(STDIN);
-$write = array(STDOUT, STDERR);
-
-stream_set_blocking(STDIN, 0);
-stream_set_blocking(STDOUT, 0);
-stream_set_blocking(STDERR, 0);
-
-$out = $err = '';
-while ($read || $write) {
-    $r = $read;
-    $w = $write;
-    $e = null;
-    $n = stream_select($r, $w, $e, 5);
-
-    if (false === $n) {
-        die(ERR_SELECT_FAILED);
-    } elseif ($n < 1) {
-        die(ERR_TIMEOUT);
-    }
-
-    if (in_array(STDOUT, $w) && strlen($out) > 0) {
-        $written = fwrite(STDOUT, (binary) $out, 32768);
-        if (false === $written) {
-            die(ERR_WRITE_FAILED);
-        }
-        $out = (binary) substr($out, $written);
-    }
-    if (null === $read && strlen($out) < 1) {
-        $write = array_diff($write, array(STDOUT));
-    }
-
-    if (in_array(STDERR, $w) && strlen($err) > 0) {
-        $written = fwrite(STDERR, (binary) $err, 32768);
-        if (false === $written) {
-            die(ERR_WRITE_FAILED);
-        }
-        $err = (binary) substr($err, $written);
-    }
-    if (null === $read && strlen($err) < 1) {
-        $write = array_diff($write, array(STDERR));
-    }
-
-    if ($r) {
-        $str = fread(STDIN, 32768);
-        if (false !== $str) {
-            $out .= $str;
-            $err .= $str;
-        }
-        if (false === $str || feof(STDIN)) {
-            $read = null;
-            if (!feof(STDIN)) {
-                die(ERR_READ_FAILED);
-            }
-        }
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/ProcessBuilderTest.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/ProcessBuilderTest.php
deleted file mode 100644
index 56e4052..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/ProcessBuilderTest.php
+++ /dev/null
@@ -1,225 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\ProcessBuilder;
-
-class ProcessBuilderTest extends \PHPUnit_Framework_TestCase
-{
-    public function testInheritEnvironmentVars()
-    {
-        $_ENV['MY_VAR_1'] = 'foo';
-
-        $proc = ProcessBuilder::create()
-            ->add('foo')
-            ->getProcess();
-
-        unset($_ENV['MY_VAR_1']);
-
-        $env = $proc->getEnv();
-        $this->assertArrayHasKey('MY_VAR_1', $env);
-        $this->assertEquals('foo', $env['MY_VAR_1']);
-    }
-
-    public function testAddEnvironmentVariables()
-    {
-        $pb = new ProcessBuilder();
-        $env = array(
-            'foo' => 'bar',
-            'foo2' => 'bar2',
-        );
-        $proc = $pb
-            ->add('command')
-            ->setEnv('foo', 'bar2')
-            ->addEnvironmentVariables($env)
-            ->inheritEnvironmentVariables(false)
-            ->getProcess()
-        ;
-
-        $this->assertSame($env, $proc->getEnv());
-    }
-
-    public function testProcessShouldInheritAndOverrideEnvironmentVars()
-    {
-        $_ENV['MY_VAR_1'] = 'foo';
-
-        $proc = ProcessBuilder::create()
-            ->setEnv('MY_VAR_1', 'bar')
-            ->add('foo')
-            ->getProcess();
-
-        unset($_ENV['MY_VAR_1']);
-
-        $env = $proc->getEnv();
-        $this->assertArrayHasKey('MY_VAR_1', $env);
-        $this->assertEquals('bar', $env['MY_VAR_1']);
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
-     */
-    public function testNegativeTimeoutFromSetter()
-    {
-        $pb = new ProcessBuilder();
-        $pb->setTimeout(-1);
-    }
-
-    public function testNullTimeout()
-    {
-        $pb = new ProcessBuilder();
-        $pb->setTimeout(10);
-        $pb->setTimeout(null);
-
-        $r = new \ReflectionObject($pb);
-        $p = $r->getProperty('timeout');
-        $p->setAccessible(true);
-
-        $this->assertNull($p->getValue($pb));
-    }
-
-    public function testShouldSetArguments()
-    {
-        $pb = new ProcessBuilder(array('initial'));
-        $pb->setArguments(array('second'));
-
-        $proc = $pb->getProcess();
-
-        $this->assertContains("second", $proc->getCommandLine());
-    }
-
-    public function testPrefixIsPrependedToAllGeneratedProcess()
-    {
-        $pb = new ProcessBuilder();
-        $pb->setPrefix('/usr/bin/php');
-
-        $proc = $pb->setArguments(array('-v'))->getProcess();
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->assertEquals('"/usr/bin/php" "-v"', $proc->getCommandLine());
-        } else {
-            $this->assertEquals("'/usr/bin/php' '-v'", $proc->getCommandLine());
-        }
-
-        $proc = $pb->setArguments(array('-i'))->getProcess();
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->assertEquals('"/usr/bin/php" "-i"', $proc->getCommandLine());
-        } else {
-            $this->assertEquals("'/usr/bin/php' '-i'", $proc->getCommandLine());
-        }
-    }
-
-    public function testArrayPrefixesArePrependedToAllGeneratedProcess()
-    {
-        $pb = new ProcessBuilder();
-        $pb->setPrefix(array('/usr/bin/php', 'composer.phar'));
-
-        $proc = $pb->setArguments(array('-v'))->getProcess();
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->assertEquals('"/usr/bin/php" "composer.phar" "-v"', $proc->getCommandLine());
-        } else {
-            $this->assertEquals("'/usr/bin/php' 'composer.phar' '-v'", $proc->getCommandLine());
-        }
-
-        $proc = $pb->setArguments(array('-i'))->getProcess();
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->assertEquals('"/usr/bin/php" "composer.phar" "-i"', $proc->getCommandLine());
-        } else {
-            $this->assertEquals("'/usr/bin/php' 'composer.phar' '-i'", $proc->getCommandLine());
-        }
-    }
-
-    public function testShouldEscapeArguments()
-    {
-        $pb = new ProcessBuilder(array('%path%', 'foo " bar', '%baz%baz'));
-        $proc = $pb->getProcess();
-
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->assertSame('^%"path"^% "foo \\" bar" "%baz%baz"', $proc->getCommandLine());
-        } else {
-            $this->assertSame("'%path%' 'foo \" bar' '%baz%baz'", $proc->getCommandLine());
-        }
-    }
-
-    public function testShouldEscapeArgumentsAndPrefix()
-    {
-        $pb = new ProcessBuilder(array('arg'));
-        $pb->setPrefix('%prefix%');
-        $proc = $pb->getProcess();
-
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->assertSame('^%"prefix"^% "arg"', $proc->getCommandLine());
-        } else {
-            $this->assertSame("'%prefix%' 'arg'", $proc->getCommandLine());
-        }
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\LogicException
-     */
-    public function testShouldThrowALogicExceptionIfNoPrefixAndNoArgument()
-    {
-        ProcessBuilder::create()->getProcess();
-    }
-
-    public function testShouldNotThrowALogicExceptionIfNoArgument()
-    {
-        $process = ProcessBuilder::create()
-            ->setPrefix('/usr/bin/php')
-            ->getProcess();
-
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->assertEquals('"/usr/bin/php"', $process->getCommandLine());
-        } else {
-            $this->assertEquals("'/usr/bin/php'", $process->getCommandLine());
-        }
-    }
-
-    public function testShouldNotThrowALogicExceptionIfNoPrefix()
-    {
-        $process = ProcessBuilder::create(array('/usr/bin/php'))
-            ->getProcess();
-
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->assertEquals('"/usr/bin/php"', $process->getCommandLine());
-        } else {
-            $this->assertEquals("'/usr/bin/php'", $process->getCommandLine());
-        }
-    }
-
-    public function testShouldReturnProcessWithDisabledOutput()
-    {
-        $process = ProcessBuilder::create(array('/usr/bin/php'))
-            ->disableOutput()
-            ->getProcess();
-
-        $this->assertTrue($process->isOutputDisabled());
-    }
-
-    public function testShouldReturnProcessWithEnabledOutput()
-    {
-        $process = ProcessBuilder::create(array('/usr/bin/php'))
-            ->disableOutput()
-            ->enableOutput()
-            ->getProcess();
-
-        $this->assertFalse($process->isOutputDisabled());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
-     * @expectedExceptionMessage Symfony\Component\Process\ProcessBuilder::setInput only accepts strings.
-     */
-    public function testInvalidInput()
-    {
-        $builder = ProcessBuilder::create();
-        $builder->setInput(array());
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/ProcessFailedExceptionTest.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/ProcessFailedExceptionTest.php
deleted file mode 100644
index c48648f..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/ProcessFailedExceptionTest.php
+++ /dev/null
@@ -1,136 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\Exception\ProcessFailedException;
-
-/**
- * @author Sebastian Marek <proofek@gmail.com>
- */
-class ProcessFailedExceptionTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * tests ProcessFailedException throws exception if the process was successful
-     */
-    public function testProcessFailedExceptionThrowsException()
-    {
-        $process = $this->getMock(
-            'Symfony\Component\Process\Process',
-            array('isSuccessful'),
-            array('php')
-        );
-        $process->expects($this->once())
-            ->method('isSuccessful')
-            ->will($this->returnValue(true));
-
-        $this->setExpectedException(
-            '\InvalidArgumentException',
-            'Expected a failed process, but the given process was successful.'
-        );
-
-        new ProcessFailedException($process);
-    }
-
-    /**
-     * tests ProcessFailedException uses information from process output
-     * to generate exception message
-     */
-    public function testProcessFailedExceptionPopulatesInformationFromProcessOutput()
-    {
-        $cmd = 'php';
-        $exitCode = 1;
-        $exitText = 'General error';
-        $output = "Command output";
-        $errorOutput = "FATAL: Unexpected error";
-
-        $process = $this->getMock(
-            'Symfony\Component\Process\Process',
-            array('isSuccessful', 'getOutput', 'getErrorOutput', 'getExitCode', 'getExitCodeText', 'isOutputDisabled'),
-            array($cmd)
-        );
-        $process->expects($this->once())
-            ->method('isSuccessful')
-            ->will($this->returnValue(false));
-
-        $process->expects($this->once())
-            ->method('getOutput')
-            ->will($this->returnValue($output));
-
-        $process->expects($this->once())
-            ->method('getErrorOutput')
-            ->will($this->returnValue($errorOutput));
-
-        $process->expects($this->once())
-            ->method('getExitCode')
-            ->will($this->returnValue($exitCode));
-
-        $process->expects($this->once())
-            ->method('getExitCodeText')
-            ->will($this->returnValue($exitText));
-
-        $process->expects($this->once())
-            ->method('isOutputDisabled')
-            ->will($this->returnValue(false));
-
-        $exception = new ProcessFailedException($process);
-
-        $this->assertEquals(
-            "The command \"$cmd\" failed.\nExit Code: $exitCode($exitText)\n\nOutput:\n================\n{$output}\n\nError Output:\n================\n{$errorOutput}",
-            $exception->getMessage()
-        );
-    }
-
-    /**
-     * Tests that ProcessFailedException does not extract information from
-     * process output if it was previously disabled
-     */
-    public function testDisabledOutputInFailedExceptionDoesNotPopulateOutput()
-    {
-        $cmd = 'php';
-        $exitCode = 1;
-        $exitText = 'General error';
-
-        $process = $this->getMock(
-            'Symfony\Component\Process\Process',
-            array('isSuccessful', 'isOutputDisabled', 'getExitCode', 'getExitCodeText', 'getOutput', 'getErrorOutput'),
-            array($cmd)
-        );
-        $process->expects($this->once())
-            ->method('isSuccessful')
-            ->will($this->returnValue(false));
-
-        $process->expects($this->never())
-            ->method('getOutput');
-
-        $process->expects($this->never())
-            ->method('getErrorOutput');
-
-        $process->expects($this->once())
-            ->method('getExitCode')
-            ->will($this->returnValue($exitCode));
-
-        $process->expects($this->once())
-            ->method('getExitCodeText')
-            ->will($this->returnValue($exitText));
-
-        $process->expects($this->once())
-            ->method('isOutputDisabled')
-            ->will($this->returnValue(true));
-
-        $exception = new ProcessFailedException($process);
-
-        $this->assertEquals(
-            "The command \"$cmd\" failed.\nExit Code: $exitCode($exitText)",
-            $exception->getMessage()
-        );
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/ProcessInSigchildEnvironment.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/ProcessInSigchildEnvironment.php
deleted file mode 100644
index 3977bcd..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/ProcessInSigchildEnvironment.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\Process;
-
-class ProcessInSigchildEnvironment extends Process
-{
-    protected function isSigchildEnabled()
-    {
-        return true;
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/ProcessUtilsTest.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/ProcessUtilsTest.php
deleted file mode 100644
index 8ba94c1..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/ProcessUtilsTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\ProcessUtils;
-
-class ProcessUtilsTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @dataProvider dataArguments
-     */
-    public function testEscapeArgument($result, $argument)
-    {
-        $this->assertSame($result, ProcessUtils::escapeArgument($argument));
-    }
-
-    public function dataArguments()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            return array(
-                array('"\"php\" \"-v\""', '"php" "-v"'),
-                array('"foo bar"', 'foo bar'),
-                array('^%"path"^%', '%path%'),
-                array('"<|>\\" \\"\'f"', '<|>" "\'f'),
-                array('""', ''),
-                array('"with\trailingbs\\\\"', 'with\trailingbs\\'),
-            );
-        }
-
-        return array(
-            array("'\"php\" \"-v\"'", '"php" "-v"'),
-            array("'foo bar'", 'foo bar'),
-            array("'%path%'", '%path%'),
-            array("'<|>\" \"'\\''f'", '<|>" "\'f'),
-            array("''", ''),
-            array("'with\\trailingbs\\'", 'with\trailingbs\\'),
-        );
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/SigchildDisabledProcessTest.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/SigchildDisabledProcessTest.php
deleted file mode 100644
index fdae5ec..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/SigchildDisabledProcessTest.php
+++ /dev/null
@@ -1,263 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-class SigchildDisabledProcessTest extends AbstractProcessTest
-{
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testGetExitCode()
-    {
-        parent::testGetExitCode();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testGetExitCodeIsNullOnStart()
-    {
-        parent::testGetExitCodeIsNullOnStart();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testGetExitCodeIsNullOnWhenStartingAgain()
-    {
-        parent::testGetExitCodeIsNullOnWhenStartingAgain();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testExitCodeCommandFailed()
-    {
-        parent::testExitCodeCommandFailed();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testMustRun()
-    {
-        parent::testMustRun();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testSuccessfulMustRunHasCorrectExitCode()
-    {
-        parent::testSuccessfulMustRunHasCorrectExitCode();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     */
-    public function testMustRunThrowsException()
-    {
-        parent::testMustRunThrowsException();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     */
-    public function testProcessIsSignaledIfStopped()
-    {
-        parent::testProcessIsSignaledIfStopped();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessWithTermSignal()
-    {
-        parent::testProcessWithTermSignal();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessIsNotSignaled()
-    {
-        parent::testProcessIsNotSignaled();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessWithoutTermSignal()
-    {
-        parent::testProcessWithoutTermSignal();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testCheckTimeoutOnStartedProcess()
-    {
-        parent::testCheckTimeoutOnStartedProcess();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.
-     */
-    public function testGetPid()
-    {
-        parent::testGetPid();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.
-     */
-    public function testGetPidIsNullBeforeStart()
-    {
-        parent::testGetPidIsNullBeforeStart();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.
-     */
-    public function testGetPidIsNullAfterRun()
-    {
-        parent::testGetPidIsNullAfterRun();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testExitCodeText()
-    {
-        $process = $this->getProcess('qdfsmfkqsdfmqmsd');
-        $process->run();
-
-        $process->getExitCodeText();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testExitCodeTextIsNullWhenExitCodeIsNull()
-    {
-        parent::testExitCodeTextIsNullWhenExitCodeIsNull();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testIsSuccessful()
-    {
-        parent::testIsSuccessful();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testIsSuccessfulOnlyAfterTerminated()
-    {
-        parent::testIsSuccessfulOnlyAfterTerminated();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testIsNotSuccessful()
-    {
-        parent::testIsNotSuccessful();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.
-     */
-    public function testTTYCommandExitCode()
-    {
-        parent::testTTYCommandExitCode();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process can not be signaled.
-     */
-    public function testSignal()
-    {
-        parent::testSignal();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessWithoutTermSignalIsNotSignaled()
-    {
-        parent::testProcessWithoutTermSignalIsNotSignaled();
-    }
-
-    public function testStopWithTimeoutIsActuallyWorking()
-    {
-        $this->markTestSkipped('Stopping with signal is not supported in sigchild environment');
-    }
-
-    public function testProcessThrowsExceptionWhenExternallySignaled()
-    {
-        $this->markTestSkipped('Retrieving Pid is not supported in sigchild environment');
-    }
-
-    public function testExitCodeIsAvailableAfterSignal()
-    {
-        $this->markTestSkipped('Signal is not supported in sigchild environment');
-    }
-
-    public function testRunProcessWithTimeout()
-    {
-        $this->markTestSkipped('Signal (required for timeout) is not supported in sigchild environment');
-    }
-
-    public function provideStartMethods()
-    {
-        return array(
-            array('start', 'Symfony\Component\Process\Exception\LogicException', 'Output has been disabled, enable it to allow the use of a callback.'),
-            array('run', 'Symfony\Component\Process\Exception\LogicException', 'Output has been disabled, enable it to allow the use of a callback.'),
-            array('mustRun', 'Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. You must use setEnhanceSigchildCompatibility() to use this method.'),
-        );
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function getProcess($commandline, $cwd = null, array $env = null, $input = null, $timeout = 60, array $options = array())
-    {
-        $process = new ProcessInSigchildEnvironment($commandline, $cwd, $env, $input, $timeout, $options);
-        $process->setEnhanceSigchildCompatibility(false);
-
-        return $process;
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/SigchildEnabledProcessTest.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/SigchildEnabledProcessTest.php
deleted file mode 100644
index 3fea3ba..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/SigchildEnabledProcessTest.php
+++ /dev/null
@@ -1,148 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-class SigchildEnabledProcessTest extends AbstractProcessTest
-{
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessIsSignaledIfStopped()
-    {
-        parent::testProcessIsSignaledIfStopped();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessWithTermSignal()
-    {
-        parent::testProcessWithTermSignal();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessIsNotSignaled()
-    {
-        parent::testProcessIsNotSignaled();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessWithoutTermSignal()
-    {
-        parent::testProcessWithoutTermSignal();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.
-     */
-    public function testGetPid()
-    {
-        parent::testGetPid();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.
-     */
-    public function testGetPidIsNullBeforeStart()
-    {
-        parent::testGetPidIsNullBeforeStart();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.
-     */
-    public function testGetPidIsNullAfterRun()
-    {
-        parent::testGetPidIsNullAfterRun();
-    }
-
-    public function testExitCodeText()
-    {
-        $process = $this->getProcess('qdfsmfkqsdfmqmsd');
-        $process->run();
-
-        $this->assertInternalType('string', $process->getExitCodeText());
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. The process can not be signaled.
-     */
-    public function testSignal()
-    {
-        parent::testSignal();
-    }
-
-    /**
-     * @expectedException \Symfony\Component\Process\Exception\RuntimeException
-     * @expectedExceptionMessage This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved.
-     */
-    public function testProcessWithoutTermSignalIsNotSignaled()
-    {
-        parent::testProcessWithoutTermSignalIsNotSignaled();
-    }
-
-    public function testProcessThrowsExceptionWhenExternallySignaled()
-    {
-        $this->markTestSkipped('Retrieving Pid is not supported in sigchild environment');
-    }
-
-    public function testExitCodeIsAvailableAfterSignal()
-    {
-        $this->markTestSkipped('Signal is not supported in sigchild environment');
-    }
-
-    public function testStartAfterATimeout()
-    {
-        if (defined('PHP_WINDOWS_VERSION_BUILD')) {
-            $this->markTestSkipped('Restarting a timed-out process on Windows is not supported in sigchild environment');
-        }
-        parent::testStartAfterATimeout();
-    }
-
-    public function testStopWithTimeoutIsActuallyWorking()
-    {
-        $this->markTestSkipped('Stopping with signal is not supported in sigchild environment');
-    }
-
-    public function testRunProcessWithTimeout()
-    {
-        $this->markTestSkipped('Signal (required for timeout) is not supported in sigchild environment');
-    }
-
-    public function testCheckTimeoutOnStartedProcess()
-    {
-        $this->markTestSkipped('Signal (required for timeout) is not supported in sigchild environment');
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function getProcess($commandline, $cwd = null, array $env = null, $input = null, $timeout = 60, array $options = array())
-    {
-        $process = new ProcessInSigchildEnvironment($commandline, $cwd, $env, $input, $timeout, $options);
-        $process->setEnhanceSigchildCompatibility(true);
-
-        return $process;
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/SignalListener.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/SignalListener.php
deleted file mode 100644
index 32910e1..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/SignalListener.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-// required for signal handling
-declare (ticks = 1);
-
-pcntl_signal(SIGUSR1, function () {echo "Caught SIGUSR1"; exit;});
-
-$n = 0;
-
-// ticks require activity to work - sleep(4); does not work
-while ($n < 400) {
-    usleep(10000);
-    $n++;
-}
-
-return;
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/Tests/SimpleProcessTest.php b/core/vendor/symfony/process/Symfony/Component/Process/Tests/SimpleProcessTest.php
deleted file mode 100644
index cd206ea..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/Tests/SimpleProcessTest.php
+++ /dev/null
@@ -1,222 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\Process\Tests;
-
-use Symfony\Component\Process\Process;
-
-class SimpleProcessTest extends AbstractProcessTest
-{
-    private $enabledSigchild = false;
-
-    public function setUp()
-    {
-        ob_start();
-        phpinfo(INFO_GENERAL);
-
-        $this->enabledSigchild = false !== strpos(ob_get_clean(), '--enable-sigchild');
-    }
-
-    public function testGetExitCode()
-    {
-        $this->skipIfPHPSigchild(); // This test use exitcode that is not available in this case
-        parent::testGetExitCode();
-    }
-
-    public function testExitCodeCommandFailed()
-    {
-        $this->skipIfPHPSigchild(); // This test use exitcode that is not available in this case
-        parent::testExitCodeCommandFailed();
-    }
-
-    public function testProcessIsSignaledIfStopped()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved');
-        parent::testProcessIsSignaledIfStopped();
-    }
-
-    public function testProcessWithTermSignal()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved');
-        parent::testProcessWithTermSignal();
-    }
-
-    public function testProcessIsNotSignaled()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved');
-        parent::testProcessIsNotSignaled();
-    }
-
-    public function testProcessWithoutTermSignal()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved');
-        parent::testProcessWithoutTermSignal();
-    }
-
-    public function testExitCodeText()
-    {
-        $this->skipIfPHPSigchild(); // This test use exitcode that is not available in this case
-        parent::testExitCodeText();
-    }
-
-    public function testIsSuccessful()
-    {
-        $this->skipIfPHPSigchild(); // This test use PID that is not available in this case
-        parent::testIsSuccessful();
-    }
-
-    public function testIsNotSuccessful()
-    {
-        $this->skipIfPHPSigchild(); // This test use PID that is not available in this case
-        parent::testIsNotSuccessful();
-    }
-
-    public function testGetPid()
-    {
-        $this->skipIfPHPSigchild(); // This test use PID that is not available in this case
-        parent::testGetPid();
-    }
-
-    public function testGetPidIsNullBeforeStart()
-    {
-        $this->skipIfPHPSigchild(); // This test use PID that is not available in this case
-        parent::testGetPidIsNullBeforeStart();
-    }
-
-    public function testGetPidIsNullAfterRun()
-    {
-        $this->skipIfPHPSigchild(); // This test use PID that is not available in this case
-        parent::testGetPidIsNullAfterRun();
-    }
-
-    public function testSignal()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-        parent::testSignal();
-    }
-
-    public function testProcessWithoutTermSignalIsNotSignaled()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. Term signal can not be retrieved');
-        parent::testProcessWithoutTermSignalIsNotSignaled();
-    }
-
-    public function testProcessThrowsExceptionWhenExternallySignaled()
-    {
-        $this->skipIfPHPSigchild(); // This test use PID that is not available in this case
-        parent::testProcessThrowsExceptionWhenExternallySignaled();
-    }
-
-    public function testExitCodeIsAvailableAfterSignal()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-        parent::testExitCodeIsAvailableAfterSignal();
-    }
-
-    public function testSignalProcessNotRunning()
-    {
-        $this->setExpectedException('Symfony\Component\Process\Exception\LogicException', 'Can not send signal on a non running process.');
-        parent::testSignalProcessNotRunning();
-    }
-
-    public function testSignalWithWrongIntSignal()
-    {
-        if ($this->enabledSigchild) {
-            $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-        } else {
-            $this->setExpectedException('Symfony\Component\Process\Exception\RuntimeException', 'Error while sending signal `-4`.');
-        }
-        parent::testSignalWithWrongIntSignal();
-    }
-
-    public function testSignalWithWrongNonIntSignal()
-    {
-        if ($this->enabledSigchild) {
-            $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-        } else {
-            $this->setExpectedException('Symfony\Component\Process\Exception\RuntimeException', 'Error while sending signal `Céphalopodes`.');
-        }
-        parent::testSignalWithWrongNonIntSignal();
-    }
-
-    public function testStopTerminatesProcessCleanly()
-    {
-        try {
-            $process = $this->getProcess('php -r "echo \'foo\'; sleep(1); echo \'bar\';"');
-            $process->run(function () use ($process) {
-                $process->stop();
-            });
-        } catch (RuntimeException $e) {
-            $this->fail('A call to stop() is not expected to cause wait() to throw a RuntimeException');
-        }
-    }
-
-    public function testKillSignalTerminatesProcessCleanly()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-
-        try {
-            $process = $this->getProcess('php -r "echo \'foo\'; sleep(1); echo \'bar\';"');
-            $process->run(function () use ($process) {
-                if ($process->isRunning()) {
-                    $process->signal(defined('SIGKILL') ? SIGKILL : 9);
-                }
-            });
-        } catch (RuntimeException $e) {
-            $this->fail('A call to signal() is not expected to cause wait() to throw a RuntimeException');
-        }
-    }
-
-    public function testTermSignalTerminatesProcessCleanly()
-    {
-        $this->expectExceptionIfPHPSigchild('Symfony\Component\Process\Exception\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
-
-        try {
-            $process = $this->getProcess('php -r "echo \'foo\'; sleep(1); echo \'bar\';"');
-            $process->run(function () use ($process) {
-                if ($process->isRunning()) {
-                    $process->signal(defined('SIGTERM') ? SIGTERM : 15);
-                }
-            });
-        } catch (RuntimeException $e) {
-            $this->fail('A call to signal() is not expected to cause wait() to throw a RuntimeException');
-        }
-    }
-
-    public function testStopWithTimeoutIsActuallyWorking()
-    {
-        $this->skipIfPHPSigchild();
-
-        parent::testStopWithTimeoutIsActuallyWorking();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function getProcess($commandline, $cwd = null, array $env = null, $input = null, $timeout = 60, array $options = array())
-    {
-        return new Process($commandline, $cwd, $env, $input, $timeout, $options);
-    }
-
-    private function skipIfPHPSigchild()
-    {
-        if ($this->enabledSigchild) {
-            $this->markTestSkipped('Your PHP has been compiled with --enable-sigchild, this test can not be executed');
-        }
-    }
-
-    private function expectExceptionIfPHPSigchild($classname, $message)
-    {
-        if ($this->enabledSigchild) {
-            $this->setExpectedException($classname, $message);
-        }
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/composer.json b/core/vendor/symfony/process/Symfony/Component/Process/composer.json
deleted file mode 100644
index b5dbfe1..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/composer.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
-    "name": "symfony/process",
-    "type": "library",
-    "description": "Symfony Process Component",
-    "keywords": [],
-    "homepage": "http://symfony.com",
-    "license": "MIT",
-    "authors": [
-        {
-            "name": "Fabien Potencier",
-            "email": "fabien@symfony.com"
-        },
-        {
-            "name": "Symfony Community",
-            "homepage": "http://symfony.com/contributors"
-        }
-    ],
-    "require": {
-        "php": ">=5.3.3"
-    },
-    "autoload": {
-        "psr-0": { "Symfony\\Component\\Process\\": "" }
-    },
-    "target-dir": "Symfony/Component/Process",
-    "minimum-stability": "dev",
-    "extra": {
-        "branch-alias": {
-            "dev-master": "2.5-dev"
-        }
-    }
-}
diff --git a/core/vendor/symfony/process/Symfony/Component/Process/phpunit.xml.dist b/core/vendor/symfony/process/Symfony/Component/Process/phpunit.xml.dist
deleted file mode 100644
index fcb230a..0000000
--- a/core/vendor/symfony/process/Symfony/Component/Process/phpunit.xml.dist
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/4.1/phpunit.xsd"
-         backupGlobals="false"
-         colors="true"
-         bootstrap="vendor/autoload.php"
->
-    <testsuites>
-        <testsuite name="Symfony Process Component Test Suite">
-            <directory>./Tests/</directory>
-        </testsuite>
-    </testsuites>
-
-    <filter>
-        <whitelist>
-            <directory>./</directory>
-            <exclude>
-                <directory>./Tests</directory>
-            </exclude>
-        </whitelist>
-    </filter>
-</phpunit>
diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/CHANGELOG.md b/core/vendor/symfony/routing/Symfony/Component/Routing/CHANGELOG.md
index 8b604ea..b5fd9db 100644
--- a/core/vendor/symfony/routing/Symfony/Component/Routing/CHANGELOG.md
+++ b/core/vendor/symfony/routing/Symfony/Component/Routing/CHANGELOG.md
@@ -23,17 +23,21 @@ CHANGELOG
 
    Before:
 
-   ```
+   ```yaml
    article_edit:
        pattern: /article/{id}
        requirements: { '_method': 'POST|PUT', '_scheme': 'https', 'id': '\d+' }
+   ```
 
+   ```xml
    <route id="article_edit" pattern="/article/{id}">
        <requirement key="_method">POST|PUT</requirement>
        <requirement key="_scheme">https</requirement>
        <requirement key="id">\d+</requirement>
    </route>
+   ```
 
+   ```php
    $route = new Route();
    $route->setPattern('/article/{id}');
    $route->setRequirement('_method', 'POST|PUT');
@@ -42,17 +46,21 @@ CHANGELOG
 
    After:
 
-   ```
+   ```yaml
    article_edit:
        path: /article/{id}
        methods: [POST, PUT]
        schemes: https
        requirements: { 'id': '\d+' }
+   ```
 
+   ```xml
    <route id="article_edit" pattern="/article/{id}" methods="POST PUT" schemes="https">
        <requirement key="id">\d+</requirement>
    </route>
+   ```
 
+   ```php
    $route = new Route();
    $route->setPath('/article/{id}');
    $route->setMethods(array('POST', 'PUT'));
@@ -66,7 +74,7 @@ CHANGELOG
 
    Before:
 
-   ```
+   ```php
    $rootCollection = new RouteCollection();
    $subCollection = new RouteCollection();
    $rootCollection->addCollection($subCollection);
@@ -75,7 +83,7 @@ CHANGELOG
 
    After:
 
-   ```
+   ```php
    $rootCollection = new RouteCollection();
    $subCollection = new RouteCollection();
    $subCollection->add('foo', new Route('/foo'));
@@ -85,8 +93,8 @@ CHANGELOG
    Also one must call `addCollection` from the bottom to the top hierarchy.
    So the correct sequence is the following (and not the reverse):
 
-   ```
-   $childCollection->->addCollection($grandchildCollection);
+   ```php
+   $childCollection->addCollection($grandchildCollection);
    $rootCollection->addCollection($childCollection);
    ```
 
@@ -112,7 +120,7 @@ CHANGELOG
    use-case instead.
    Before: `$parentCollection->addCollection($collection, '/prefix', array(...), array(...))`
    After:
-   ```
+   ```php
    $collection->addPrefix('/prefix', array(...), array(...));
    $parentCollection->addCollection($collection);
    ```
@@ -164,6 +172,6 @@ CHANGELOG
    been used anyway without creating inconsistencies
  * [BC BREAK] RouteCollection::remove also removes a route from parent
    collections (not only from its children)
- * added ConfigurableRequirementsInterface that allows to disable exceptions 
+ * added ConfigurableRequirementsInterface that allows to disable exceptions
    (and generate empty URLs instead) when generating a route with an invalid
    parameter value
diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/README.md b/core/vendor/symfony/routing/Symfony/Component/Routing/README.md
index 83febc7..cd566a5 100644
--- a/core/vendor/symfony/routing/Symfony/Component/Routing/README.md
+++ b/core/vendor/symfony/routing/Symfony/Component/Routing/README.md
@@ -6,23 +6,25 @@ Routing associates a request with the code that will convert it to a response.
 The example below demonstrates how you can set up a fully working routing
 system:
 
-    use Symfony\Component\HttpFoundation\Request;
-    use Symfony\Component\Routing\Matcher\UrlMatcher;
-    use Symfony\Component\Routing\RequestContext;
-    use Symfony\Component\Routing\RouteCollection;
-    use Symfony\Component\Routing\Route;
+```php
+use Symfony\Component\HttpFoundation\Request;
+use Symfony\Component\Routing\Matcher\UrlMatcher;
+use Symfony\Component\Routing\RequestContext;
+use Symfony\Component\Routing\RouteCollection;
+use Symfony\Component\Routing\Route;
 
-    $routes = new RouteCollection();
-    $routes->add('hello', new Route('/hello', array('controller' => 'foo')));
+$routes = new RouteCollection();
+$routes->add('hello', new Route('/hello', array('controller' => 'foo')));
 
-    $context = new RequestContext();
+$context = new RequestContext();
 
-    // this is optional and can be done without a Request instance
-    $context->fromRequest(Request::createFromGlobals());
+// this is optional and can be done without a Request instance
+$context->fromRequest(Request::createFromGlobals());
 
-    $matcher = new UrlMatcher($routes, $context);
+$matcher = new UrlMatcher($routes, $context);
 
-    $parameters = $matcher->match('/hello');
+$parameters = $matcher->match('/hello');
+```
 
 Resources
 ---------
diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/RequestContext.php b/core/vendor/symfony/routing/Symfony/Component/Routing/RequestContext.php
index 93fd09a..c8fcf44 100644
--- a/core/vendor/symfony/routing/Symfony/Component/Routing/RequestContext.php
+++ b/core/vendor/symfony/routing/Symfony/Component/Routing/RequestContext.php
@@ -17,6 +17,7 @@
  * Holds information about the current request.
  *
  * @author Fabien Potencier <fabien@symfony.com>
+ * @author Tobias Schultze <http://tobion.de>
  *
  * @api
  */
@@ -52,16 +53,21 @@ class RequestContext
      */
     public function __construct($baseUrl = '', $method = 'GET', $host = 'localhost', $scheme = 'http', $httpPort = 80, $httpsPort = 443, $path = '/', $queryString = '')
     {
-        $this->baseUrl = $baseUrl;
-        $this->method = strtoupper($method);
-        $this->host = $host;
-        $this->scheme = strtolower($scheme);
-        $this->httpPort = $httpPort;
-        $this->httpsPort = $httpsPort;
-        $this->pathInfo = $path;
-        $this->queryString = $queryString;
+        $this->setBaseUrl($baseUrl);
+        $this->setMethod($method);
+        $this->setHost($host);
+        $this->setScheme($scheme);
+        $this->setHttpPort($httpPort);
+        $this->setHttpsPort($httpsPort);
+        $this->setPathInfo($path);
+        $this->setQueryString($queryString);
     }
 
+    /**
+     * Updates the RequestContext information based on a HttpFoundation Request.
+     *
+     * @param Request $request A Request instance
+     */
     public function fromRequest(Request $request)
     {
         $this->setBaseUrl($request->getBaseUrl());
@@ -71,7 +77,7 @@ public function fromRequest(Request $request)
         $this->setScheme($request->getScheme());
         $this->setHttpPort($request->isSecure() ? $this->httpPort : $request->getPort());
         $this->setHttpsPort($request->isSecure() ? $request->getPort() : $this->httpsPort);
-        $this->setQueryString($request->server->get('QUERY_STRING'));
+        $this->setQueryString($request->server->get('QUERY_STRING', ''));
     }
 
     /**
@@ -143,6 +149,8 @@ public function setMethod($method)
     /**
      * Gets the HTTP host.
      *
+     * The host is always lowercased because it must be treated case-insensitive.
+     *
      * @return string The HTTP host
      */
     public function getHost()
@@ -159,7 +167,7 @@ public function getHost()
      */
     public function setHost($host)
     {
-        $this->host = $host;
+        $this->host = strtolower($host);
     }
 
     /**
@@ -187,7 +195,7 @@ public function setScheme($scheme)
     /**
      * Gets the HTTP port.
      *
-     * @return string The HTTP port
+     * @return int The HTTP port
      */
     public function getHttpPort()
     {
@@ -197,19 +205,19 @@ public function getHttpPort()
     /**
      * Sets the HTTP port.
      *
-     * @param string $httpPort The HTTP port
+     * @param int $httpPort The HTTP port
      *
      * @api
      */
     public function setHttpPort($httpPort)
     {
-        $this->httpPort = $httpPort;
+        $this->httpPort = (int) $httpPort;
     }
 
     /**
      * Gets the HTTPS port.
      *
-     * @return string The HTTPS port
+     * @return int The HTTPS port
      */
     public function getHttpsPort()
     {
@@ -219,19 +227,19 @@ public function getHttpsPort()
     /**
      * Sets the HTTPS port.
      *
-     * @param string $httpsPort The HTTPS port
+     * @param int $httpsPort The HTTPS port
      *
      * @api
      */
     public function setHttpsPort($httpsPort)
     {
-        $this->httpsPort = $httpsPort;
+        $this->httpsPort = (int) $httpsPort;
     }
 
     /**
      * Gets the query string.
      *
-     * @return string The query string
+     * @return string The query string without the "?"
      */
     public function getQueryString()
     {
@@ -241,13 +249,14 @@ public function getQueryString()
     /**
      * Sets the query string.
      *
-     * @param string $queryString The query string
+     * @param string $queryString The query string (after "?")
      *
      * @api
      */
     public function setQueryString($queryString)
     {
-        $this->queryString = $queryString;
+        // string cast to be fault-tolerant, accepting null
+        $this->queryString = (string) $queryString;
     }
 
     /**
@@ -263,11 +272,9 @@ public function getParameters()
     /**
      * Sets the parameters.
      *
-     * This method implements a fluent interface.
-     *
      * @param array $parameters The parameters
      *
-     * @return Route The current Route instance
+     * @return RequestContext The current instance, implementing a fluent interface
      */
     public function setParameters(array $parameters)
     {
@@ -281,7 +288,7 @@ public function setParameters(array $parameters)
      *
      * @param string $name A parameter name
      *
-     * @return mixed The parameter value
+     * @return mixed The parameter value or null if nonexistent
      */
     public function getParameter($name)
     {
@@ -293,7 +300,7 @@ public function getParameter($name)
      *
      * @param string $name A parameter name
      *
-     * @return bool    true if the parameter value is set, false otherwise
+     * @return bool True if the parameter value is set, false otherwise
      */
     public function hasParameter($name)
     {
diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/RouteCompiler.php b/core/vendor/symfony/routing/Symfony/Component/Routing/RouteCompiler.php
index 9234b42..095145f 100644
--- a/core/vendor/symfony/routing/Symfony/Component/Routing/RouteCompiler.php
+++ b/core/vendor/symfony/routing/Symfony/Component/Routing/RouteCompiler.php
@@ -37,12 +37,8 @@ class RouteCompiler implements RouteCompilerInterface
      */
     public static function compile(Route $route)
     {
-        $staticPrefix = null;
         $hostVariables = array();
-        $pathVariables = array();
         $variables = array();
-        $tokens = array();
-        $regex = null;
         $hostRegex = null;
         $hostTokens = array();
 
diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RequestContextTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RequestContextTest.php
index 21a2999..98fac0b 100644
--- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RequestContextTest.php
+++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RequestContextTest.php
@@ -98,4 +98,46 @@ public function testSetParameter()
 
         $this->assertEquals('bar', $requestContext->getParameter('foo'));
     }
+
+    public function testMethod()
+    {
+        $requestContext = new RequestContext();
+        $requestContext->setMethod('post');
+
+        $this->assertSame('POST', $requestContext->getMethod());
+    }
+
+    public function testScheme()
+    {
+        $requestContext = new RequestContext();
+        $requestContext->setScheme('HTTPS');
+
+        $this->assertSame('https', $requestContext->getScheme());
+    }
+
+    public function testHost()
+    {
+        $requestContext = new RequestContext();
+        $requestContext->setHost('eXampLe.com');
+
+        $this->assertSame('example.com', $requestContext->getHost());
+    }
+
+    public function testQueryString()
+    {
+        $requestContext = new RequestContext();
+        $requestContext->setQueryString(null);
+
+        $this->assertSame('', $requestContext->getQueryString());
+    }
+
+    public function testPort()
+    {
+        $requestContext = new RequestContext();
+        $requestContext->setHttpPort('123');
+        $requestContext->setHttpsPort('456');
+
+        $this->assertSame(123, $requestContext->getHttpPort());
+        $this->assertSame(456, $requestContext->getHttpsPort());
+    }
 }
diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/README.md b/core/vendor/symfony/validator/Symfony/Component/Validator/README.md
index 6825a2f..c98e133 100644
--- a/core/vendor/symfony/validator/Symfony/Component/Validator/README.md
+++ b/core/vendor/symfony/validator/Symfony/Component/Validator/README.md
@@ -12,12 +12,14 @@ The component provides "validation constraints", which are simple objects
 containing the rules for the validation. Let's validate a simple string
 as an example:
 
-    use Symfony\Component\Validator\Validation;
-    use Symfony\Component\Validator\Constraints\Length;
+```php
+use Symfony\Component\Validator\Validation;
+use Symfony\Component\Validator\Constraints\Length;
 
-    $validator = Validation::createValidator();
+$validator = Validation::createValidator();
 
-    $violations = $validator->validateValue('Bernhard', new Length(array('min' => 10)));
+$violations = $validator->validateValue('Bernhard', new Length(array('min' => 10)));
+```
 
 This validation will fail because the given string is shorter than ten
 characters. The precise errors, here called "constraint violations",  are
@@ -26,24 +28,26 @@ If the violation list is empty, validation succeeded.
 
 Validation of arrays is possible using the `Collection` constraint:
 
-    use Symfony\Component\Validator\Validation;
-    use Symfony\Component\Validator\Constraints as Assert;
+```php
+use Symfony\Component\Validator\Validation;
+use Symfony\Component\Validator\Constraints as Assert;
 
-    $validator = Validation::createValidator();
+$validator = Validation::createValidator();
 
-    $constraint = new Assert\Collection(array(
-        'name' => new Assert\Collection(array(
-            'first_name' => new Assert\Length(array('min' => 101)),
-            'last_name'  => new Assert\Length(array('min' => 1)),
-        )),
-        'email'    => new Assert\Email(),
-        'simple'   => new Assert\Length(array('min' => 102)),
-        'gender'   => new Assert\Choice(array(3, 4)),
-        'file'     => new Assert\File(),
-        'password' => new Assert\Length(array('min' => 60)),
-    ));
+$constraint = new Assert\Collection(array(
+    'name' => new Assert\Collection(array(
+        'first_name' => new Assert\Length(array('min' => 101)),
+        'last_name'  => new Assert\Length(array('min' => 1)),
+    )),
+    'email'    => new Assert\Email(),
+    'simple'   => new Assert\Length(array('min' => 102)),
+    'gender'   => new Assert\Choice(array(3, 4)),
+    'file'     => new Assert\File(),
+    'password' => new Assert\Length(array('min' => 60)),
+));
 
-    $violations = $validator->validateValue($input, $constraint);
+$violations = $validator->validateValue($input, $constraint);
+```
 
 Again, the validator returns the list of violations.
 
@@ -52,45 +56,47 @@ a mapping you can put constraints onto properties and objects of classes.
 Whenever an object of this class is validated, its properties and
 method results are matched against the constraints.
 
-    use Symfony\Component\Validator\Validation;
-    use Symfony\Component\Validator\Constraints as Assert;
+```php
+use Symfony\Component\Validator\Validation;
+use Symfony\Component\Validator\Constraints as Assert;
+
+class User
+{
+    /**
+     * @Assert\Length(min = 3)
+     * @Assert\NotBlank
+     */
+    private $name;
+
+    /**
+     * @Assert\Email
+     * @Assert\NotBlank
+     */
+    private $email;
+
+    public function __construct($name, $email)
+    {
+        $this->name = $name;
+        $this->email = $email;
+    }
 
-    class User
+    /**
+     * @Assert\True(message = "The user should have a Google Mail account")
+     */
+    public function isGmailUser()
     {
-        /**
-         * @Assert\Length(min = 3)
-         * @Assert\NotBlank
-         */
-        private $name;
-
-        /**
-         * @Assert\Email
-         * @Assert\NotBlank
-         */
-        private $email;
-
-        public function __construct($name, $email)
-        {
-            $this->name = $name;
-            $this->email = $email;
-        }
-
-        /**
-         * @Assert\True(message = "The user should have a Google Mail account")
-         */
-        public function isGmailUser()
-        {
-            return false !== strpos($this->email, '@gmail.com');
-        }
+        return false !== strpos($this->email, '@gmail.com');
     }
+}
 
-    $validator = Validation::createValidatorBuilder()
-        ->enableAnnotationMapping()
-        ->getValidator();
+$validator = Validation::createValidatorBuilder()
+    ->enableAnnotationMapping()
+    ->getValidator();
 
-    $user = new User('John Doe', 'john@example.com');
+$user = new User('John Doe', 'john@example.com');
 
-    $violations = $validator->validate($user);
+$violations = $validator->validate($user);
+```
 
 This example uses the annotation support of Doctrine Common to
 map constraints to properties and methods. You can also map constraints
