diff --git a/composer.lock b/composer.lock
index 58be858..d40b0a0 100644
--- a/composer.lock
+++ b/composer.lock
@@ -1107,24 +1107,23 @@
         },
         {
             "name": "symfony/class-loader",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/class-loader.git",
-                "reference": "d957ea6295d7016e20d7eff33a6c1deef819c0d4"
+                "reference": "320f8d2a9cdbcbeb24be602c124aae9d998474a4"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/class-loader/zipball/d957ea6295d7016e20d7eff33a6c1deef819c0d4",
-                "reference": "d957ea6295d7016e20d7eff33a6c1deef819c0d4",
+                "url": "https://api.github.com/repos/symfony/class-loader/zipball/320f8d2a9cdbcbeb24be602c124aae9d998474a4",
+                "reference": "320f8d2a9cdbcbeb24be602c124aae9d998474a4",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.9"
             },
             "require-dev": {
-                "symfony/finder": "~2.0,>=2.0.5",
-                "symfony/phpunit-bridge": "~2.7"
+                "symfony/finder": "~2.0,>=2.0.5"
             },
             "type": "library",
             "extra": {
@@ -1153,20 +1152,20 @@
             ],
             "description": "Symfony ClassLoader Component",
             "homepage": "https://symfony.com",
-            "time": "2015-08-26 17:56:37"
+            "time": "2015-10-23 14:47:27"
         },
         {
             "name": "symfony/console",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/console.git",
-                "reference": "06cb17c013a82f94a3d840682b49425cd00a2161"
+                "reference": "5efd632294c8320ea52492db22292ff853a43766"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/console/zipball/06cb17c013a82f94a3d840682b49425cd00a2161",
-                "reference": "06cb17c013a82f94a3d840682b49425cd00a2161",
+                "url": "https://api.github.com/repos/symfony/console/zipball/5efd632294c8320ea52492db22292ff853a43766",
+                "reference": "5efd632294c8320ea52492db22292ff853a43766",
                 "shasum": ""
             },
             "require": {
@@ -1175,7 +1174,6 @@
             "require-dev": {
                 "psr/log": "~1.0",
                 "symfony/event-dispatcher": "~2.1",
-                "symfony/phpunit-bridge": "~2.7",
                 "symfony/process": "~2.1"
             },
             "suggest": {
@@ -1210,20 +1208,20 @@
             ],
             "description": "Symfony Console Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-25 08:32:23"
+            "time": "2015-10-20 14:38:46"
         },
         {
             "name": "symfony/debug",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/debug.git",
-                "reference": "c79c361bca8e5ada6a47603875a3c964d03b67b1"
+                "reference": "fb9e6887db716939f41af0ba8ef38a1582eb501b"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/debug/zipball/c79c361bca8e5ada6a47603875a3c964d03b67b1",
-                "reference": "c79c361bca8e5ada6a47603875a3c964d03b67b1",
+                "url": "https://api.github.com/repos/symfony/debug/zipball/fb9e6887db716939f41af0ba8ef38a1582eb501b",
+                "reference": "fb9e6887db716939f41af0ba8ef38a1582eb501b",
                 "shasum": ""
             },
             "require": {
@@ -1235,8 +1233,7 @@
             },
             "require-dev": {
                 "symfony/class-loader": "~2.2",
-                "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2",
-                "symfony/phpunit-bridge": "~2.7"
+                "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2"
             },
             "type": "library",
             "extra": {
@@ -1265,20 +1262,20 @@
             ],
             "description": "Symfony Debug Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-14 08:41:38"
+            "time": "2015-10-11 09:39:48"
         },
         {
             "name": "symfony/dependency-injection",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/dependency-injection.git",
-                "reference": "422c3819b110f610d79c6f1dc38af23787dc790e"
+                "reference": "af284e795ec8a08c80d1fc47518fd23004b89847"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/422c3819b110f610d79c6f1dc38af23787dc790e",
-                "reference": "422c3819b110f610d79c6f1dc38af23787dc790e",
+                "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/af284e795ec8a08c80d1fc47518fd23004b89847",
+                "reference": "af284e795ec8a08c80d1fc47518fd23004b89847",
                 "shasum": ""
             },
             "require": {
@@ -1290,7 +1287,6 @@
             "require-dev": {
                 "symfony/config": "~2.2",
                 "symfony/expression-language": "~2.6",
-                "symfony/phpunit-bridge": "~2.7",
                 "symfony/yaml": "~2.1"
             },
             "suggest": {
@@ -1325,20 +1321,20 @@
             ],
             "description": "Symfony DependencyInjection Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-15 08:30:42"
+            "time": "2015-10-27 15:38:06"
         },
         {
             "name": "symfony/event-dispatcher",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/event-dispatcher.git",
-                "reference": "ae4dcc2a8d3de98bd794167a3ccda1311597c5d9"
+                "reference": "87a5db5ea887763fa3a31a5471b512ff1596d9b8"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/ae4dcc2a8d3de98bd794167a3ccda1311597c5d9",
-                "reference": "ae4dcc2a8d3de98bd794167a3ccda1311597c5d9",
+                "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/87a5db5ea887763fa3a31a5471b512ff1596d9b8",
+                "reference": "87a5db5ea887763fa3a31a5471b512ff1596d9b8",
                 "shasum": ""
             },
             "require": {
@@ -1349,7 +1345,6 @@
                 "symfony/config": "~2.0,>=2.0.5",
                 "symfony/dependency-injection": "~2.6",
                 "symfony/expression-language": "~2.6",
-                "symfony/phpunit-bridge": "~2.7",
                 "symfony/stopwatch": "~2.3"
             },
             "suggest": {
@@ -1383,28 +1378,27 @@
             ],
             "description": "Symfony EventDispatcher Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-22 13:49:29"
+            "time": "2015-10-11 09:39:48"
         },
         {
             "name": "symfony/http-foundation",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/http-foundation.git",
-                "reference": "e1509119f164a0d0a940d7d924d693a7a28a5470"
+                "reference": "7598eea151ae3d4134df1f9957364b17809eea75"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e1509119f164a0d0a940d7d924d693a7a28a5470",
-                "reference": "e1509119f164a0d0a940d7d924d693a7a28a5470",
+                "url": "https://api.github.com/repos/symfony/http-foundation/zipball/7598eea151ae3d4134df1f9957364b17809eea75",
+                "reference": "7598eea151ae3d4134df1f9957364b17809eea75",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.9"
             },
             "require-dev": {
-                "symfony/expression-language": "~2.4",
-                "symfony/phpunit-bridge": "~2.7"
+                "symfony/expression-language": "~2.4"
             },
             "type": "library",
             "extra": {
@@ -1436,20 +1430,20 @@
             ],
             "description": "Symfony HttpFoundation Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-22 13:49:29"
+            "time": "2015-10-23 14:47:27"
         },
         {
             "name": "symfony/http-kernel",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/http-kernel.git",
-                "reference": "353aa457424262d7d4e4289ea483145921cffcb5"
+                "reference": "4260f2273a446a6715063dc9ca89fd0c475c2f77"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/http-kernel/zipball/353aa457424262d7d4e4289ea483145921cffcb5",
-                "reference": "353aa457424262d7d4e4289ea483145921cffcb5",
+                "url": "https://api.github.com/repos/symfony/http-kernel/zipball/4260f2273a446a6715063dc9ca89fd0c475c2f77",
+                "reference": "4260f2273a446a6715063dc9ca89fd0c475c2f77",
                 "shasum": ""
             },
             "require": {
@@ -1472,7 +1466,6 @@
                 "symfony/dom-crawler": "~2.0,>=2.0.5",
                 "symfony/expression-language": "~2.4",
                 "symfony/finder": "~2.0,>=2.0.5",
-                "symfony/phpunit-bridge": "~2.7",
                 "symfony/process": "~2.0,>=2.0.5",
                 "symfony/routing": "~2.2",
                 "symfony/stopwatch": "~2.3",
@@ -1516,28 +1509,25 @@
             ],
             "description": "Symfony HttpKernel Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-25 11:16:52"
+            "time": "2015-10-27 19:07:21"
         },
         {
             "name": "symfony/process",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/process.git",
-                "reference": "b27c8e317922cd3cdd3600850273cf6b82b2e8e9"
+                "reference": "4a959dd4e19c2c5d7512689413921e0a74386ec7"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/process/zipball/b27c8e317922cd3cdd3600850273cf6b82b2e8e9",
-                "reference": "b27c8e317922cd3cdd3600850273cf6b82b2e8e9",
+                "url": "https://api.github.com/repos/symfony/process/zipball/4a959dd4e19c2c5d7512689413921e0a74386ec7",
+                "reference": "4a959dd4e19c2c5d7512689413921e0a74386ec7",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.9"
             },
-            "require-dev": {
-                "symfony/phpunit-bridge": "~2.7"
-            },
             "type": "library",
             "extra": {
                 "branch-alias": {
@@ -1565,7 +1555,7 @@
             ],
             "description": "Symfony Process Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-19 19:59:23"
+            "time": "2015-10-23 14:47:27"
         },
         {
             "name": "symfony/psr-http-message-bridge",
@@ -1623,16 +1613,16 @@
         },
         {
             "name": "symfony/routing",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/routing.git",
-                "reference": "6c5fae83efa20baf166fcf4582f57094e9f60f16"
+                "reference": "f353e1f588679c3ec987624e6c617646bd01ba38"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/routing/zipball/6c5fae83efa20baf166fcf4582f57094e9f60f16",
-                "reference": "6c5fae83efa20baf166fcf4582f57094e9f60f16",
+                "url": "https://api.github.com/repos/symfony/routing/zipball/f353e1f588679c3ec987624e6c617646bd01ba38",
+                "reference": "f353e1f588679c3ec987624e6c617646bd01ba38",
                 "shasum": ""
             },
             "require": {
@@ -1648,7 +1638,6 @@
                 "symfony/config": "~2.7",
                 "symfony/expression-language": "~2.4",
                 "symfony/http-foundation": "~2.3",
-                "symfony/phpunit-bridge": "~2.7",
                 "symfony/yaml": "~2.0,>=2.0.5"
             },
             "suggest": {
@@ -1690,20 +1679,20 @@
                 "uri",
                 "url"
             ],
-            "time": "2015-09-14 14:14:09"
+            "time": "2015-10-27 15:38:06"
         },
         {
             "name": "symfony/serializer",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/serializer.git",
-                "reference": "baf24f86a8656eea9c80988f332e51461bfcb67f"
+                "reference": "14056684acad23b8815eb336bccc0b4ac76bd823"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/serializer/zipball/baf24f86a8656eea9c80988f332e51461bfcb67f",
-                "reference": "baf24f86a8656eea9c80988f332e51461bfcb67f",
+                "url": "https://api.github.com/repos/symfony/serializer/zipball/14056684acad23b8815eb336bccc0b4ac76bd823",
+                "reference": "14056684acad23b8815eb336bccc0b4ac76bd823",
                 "shasum": ""
             },
             "require": {
@@ -1713,7 +1702,6 @@
                 "doctrine/annotations": "~1.0",
                 "doctrine/cache": "~1.0",
                 "symfony/config": "~2.2",
-                "symfony/phpunit-bridge": "~2.7",
                 "symfony/property-access": "~2.3",
                 "symfony/yaml": "~2.0,>=2.0.5"
             },
@@ -1751,20 +1739,20 @@
             ],
             "description": "Symfony Serializer Component",
             "homepage": "https://symfony.com",
-            "time": "2015-08-31 16:44:53"
+            "time": "2015-10-11 09:39:48"
         },
         {
             "name": "symfony/translation",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/translation.git",
-                "reference": "485877661835e188cd78345c6d4eef1290d17571"
+                "reference": "6ccd9289ec1c71d01a49d83480de3b5293ce30c8"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/translation/zipball/485877661835e188cd78345c6d4eef1290d17571",
-                "reference": "485877661835e188cd78345c6d4eef1290d17571",
+                "url": "https://api.github.com/repos/symfony/translation/zipball/6ccd9289ec1c71d01a49d83480de3b5293ce30c8",
+                "reference": "6ccd9289ec1c71d01a49d83480de3b5293ce30c8",
                 "shasum": ""
             },
             "require": {
@@ -1777,7 +1765,6 @@
                 "psr/log": "~1.0",
                 "symfony/config": "~2.7",
                 "symfony/intl": "~2.4",
-                "symfony/phpunit-bridge": "~2.7",
                 "symfony/yaml": "~2.2"
             },
             "suggest": {
@@ -1812,20 +1799,20 @@
             ],
             "description": "Symfony Translation Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-06 08:36:38"
+            "time": "2015-10-27 15:38:06"
         },
         {
             "name": "symfony/validator",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/validator.git",
-                "reference": "b359dc71e253ce6eb69eefbd5088032241e7a66f"
+                "reference": "df9021e689aa3d08367881e7f8917219fabe5e64"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/validator/zipball/b359dc71e253ce6eb69eefbd5088032241e7a66f",
-                "reference": "b359dc71e253ce6eb69eefbd5088032241e7a66f",
+                "url": "https://api.github.com/repos/symfony/validator/zipball/df9021e689aa3d08367881e7f8917219fabe5e64",
+                "reference": "df9021e689aa3d08367881e7f8917219fabe5e64",
                 "shasum": ""
             },
             "require": {
@@ -1835,12 +1822,12 @@
             "require-dev": {
                 "doctrine/annotations": "~1.0",
                 "doctrine/cache": "~1.0",
+                "doctrine/common": "~2.3",
                 "egulias/email-validator": "~1.2,>=1.2.1",
                 "symfony/config": "~2.2",
                 "symfony/expression-language": "~2.4",
                 "symfony/http-foundation": "~2.1",
                 "symfony/intl": "~2.4",
-                "symfony/phpunit-bridge": "~2.7",
                 "symfony/property-access": "~2.3",
                 "symfony/yaml": "~2.0,>=2.0.5"
             },
@@ -1882,28 +1869,25 @@
             ],
             "description": "Symfony Validator Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-23 11:13:27"
+            "time": "2015-10-18 20:23:18"
         },
         {
             "name": "symfony/yaml",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/yaml.git",
-                "reference": "31cb2ad0155c95b88ee55fe12bc7ff92232c1770"
+                "reference": "eca9019c88fbe250164affd107bc8057771f3f4d"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/yaml/zipball/31cb2ad0155c95b88ee55fe12bc7ff92232c1770",
-                "reference": "31cb2ad0155c95b88ee55fe12bc7ff92232c1770",
+                "url": "https://api.github.com/repos/symfony/yaml/zipball/eca9019c88fbe250164affd107bc8057771f3f4d",
+                "reference": "eca9019c88fbe250164affd107bc8057771f3f4d",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.9"
             },
-            "require-dev": {
-                "symfony/phpunit-bridge": "~2.7"
-            },
             "type": "library",
             "extra": {
                 "branch-alias": {
@@ -1931,7 +1915,7 @@
             ],
             "description": "Symfony Yaml Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-14 14:14:09"
+            "time": "2015-10-11 09:39:48"
         },
         {
             "name": "twig/twig",
@@ -2004,7 +1988,7 @@
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/wikimedia/composer-merge-plugin/zipball/6196fdb001faf681f92db2ae10abafb5815affde",
+                "url": "https://api.github.com/repos/wikimedia/composer-merge-plugin/zipball/ef66d8b92b741d6278dace3658afc35416831ff1",
                 "reference": "47bb3388cfeae41a38087ac8465a7d08fa92ea2e",
                 "shasum": ""
             },
@@ -3599,16 +3583,16 @@
         },
         {
             "name": "symfony/browser-kit",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/browser-kit.git",
-                "reference": "277a2457776d4cc25706fbdd9d1e4ab2dac884e4"
+                "reference": "07d664a052572ccc28eb2ab7dbbe82155b1ad367"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/browser-kit/zipball/277a2457776d4cc25706fbdd9d1e4ab2dac884e4",
-                "reference": "277a2457776d4cc25706fbdd9d1e4ab2dac884e4",
+                "url": "https://api.github.com/repos/symfony/browser-kit/zipball/07d664a052572ccc28eb2ab7dbbe82155b1ad367",
+                "reference": "07d664a052572ccc28eb2ab7dbbe82155b1ad367",
                 "shasum": ""
             },
             "require": {
@@ -3617,8 +3601,7 @@
             },
             "require-dev": {
                 "symfony/css-selector": "~2.0,>=2.0.5",
-                "symfony/phpunit-bridge": "~2.7",
-                "symfony/process": "~2.0,>=2.0.5"
+                "symfony/process": "~2.3.34|~2.7,>=2.7.6"
             },
             "suggest": {
                 "symfony/process": ""
@@ -3650,28 +3633,25 @@
             ],
             "description": "Symfony BrowserKit Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-06 08:36:38"
+            "time": "2015-10-23 14:47:27"
         },
         {
             "name": "symfony/css-selector",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/css-selector.git",
-                "reference": "abe19cc0429a06be0c133056d1f9859854860970"
+                "reference": "e1b865b26be4a56d22a8dee398375044a80c865b"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/css-selector/zipball/abe19cc0429a06be0c133056d1f9859854860970",
-                "reference": "abe19cc0429a06be0c133056d1f9859854860970",
+                "url": "https://api.github.com/repos/symfony/css-selector/zipball/e1b865b26be4a56d22a8dee398375044a80c865b",
+                "reference": "e1b865b26be4a56d22a8dee398375044a80c865b",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.9"
             },
-            "require-dev": {
-                "symfony/phpunit-bridge": "~2.7"
-            },
             "type": "library",
             "extra": {
                 "branch-alias": {
@@ -3703,28 +3683,27 @@
             ],
             "description": "Symfony CssSelector Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-22 13:49:29"
+            "time": "2015-10-11 09:39:48"
         },
         {
             "name": "symfony/dom-crawler",
-            "version": "v2.7.5",
+            "version": "v2.7.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/dom-crawler.git",
-                "reference": "2e185ca136399f902b948694987e62c80099c052"
+                "reference": "5fef7d8b80d8f9992df99d8ee283f420484c9612"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/2e185ca136399f902b948694987e62c80099c052",
-                "reference": "2e185ca136399f902b948694987e62c80099c052",
+                "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/5fef7d8b80d8f9992df99d8ee283f420484c9612",
+                "reference": "5fef7d8b80d8f9992df99d8ee283f420484c9612",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.3.9"
             },
             "require-dev": {
-                "symfony/css-selector": "~2.3",
-                "symfony/phpunit-bridge": "~2.7"
+                "symfony/css-selector": "~2.3"
             },
             "suggest": {
                 "symfony/css-selector": ""
@@ -3756,7 +3735,7 @@
             ],
             "description": "Symfony DomCrawler Component",
             "homepage": "https://symfony.com",
-            "time": "2015-09-20 21:13:58"
+            "time": "2015-10-11 09:39:48"
         }
     ],
     "aliases": [],
diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php
index fac9eab..6d782e0 100644
--- a/vendor/composer/autoload_classmap.php
+++ b/vendor/composer/autoload_classmap.php
@@ -437,6 +437,7 @@
     'SebastianBergmann\\Environment\\Runtime' => $vendorDir . '/sebastian/environment/src/Runtime.php',
     'SebastianBergmann\\Exporter\\Exporter' => $vendorDir . '/sebastian/exporter/src/Exporter.php',
     'SebastianBergmann\\GlobalState\\Blacklist' => $vendorDir . '/sebastian/global-state/src/Blacklist.php',
+    'SebastianBergmann\\GlobalState\\CodeExporter' => $vendorDir . '/sebastian/global-state/src/CodeExporter.php',
     'SebastianBergmann\\GlobalState\\Exception' => $vendorDir . '/sebastian/global-state/src/Exception.php',
     'SebastianBergmann\\GlobalState\\Restorer' => $vendorDir . '/sebastian/global-state/src/Restorer.php',
     'SebastianBergmann\\GlobalState\\RuntimeException' => $vendorDir . '/sebastian/global-state/src/RuntimeException.php',
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index af7346c..430e194 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -107,7 +107,7 @@
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/wikimedia/composer-merge-plugin/zipball/6196fdb001faf681f92db2ae10abafb5815affde",
+            "url": "https://api.github.com/repos/wikimedia/composer-merge-plugin/zipball/ef66d8b92b741d6278dace3658afc35416831ff1",
             "reference": "47bb3388cfeae41a38087ac8465a7d08fa92ea2e",
             "shasum": ""
         },
@@ -972,61 +972,6 @@
         ]
     },
     {
-        "name": "symfony/http-foundation",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/symfony/http-foundation.git",
-            "reference": "e1509119f164a0d0a940d7d924d693a7a28a5470"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/symfony/http-foundation/zipball/e1509119f164a0d0a940d7d924d693a7a28a5470",
-            "reference": "e1509119f164a0d0a940d7d924d693a7a28a5470",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.9"
-        },
-        "require-dev": {
-            "symfony/expression-language": "~2.4",
-            "symfony/phpunit-bridge": "~2.7"
-        },
-        "time": "2015-09-22 13:49:29",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.7-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\HttpFoundation\\": ""
-            },
-            "classmap": [
-                "Resources/stubs"
-            ]
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
-        ],
-        "description": "Symfony HttpFoundation Component",
-        "homepage": "https://symfony.com"
-    },
-    {
         "name": "psr/log",
         "version": "1.0.0",
         "version_normalized": "1.0.0.0",
@@ -1067,145 +1012,6 @@
         ]
     },
     {
-        "name": "symfony/debug",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/symfony/debug.git",
-            "reference": "c79c361bca8e5ada6a47603875a3c964d03b67b1"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/symfony/debug/zipball/c79c361bca8e5ada6a47603875a3c964d03b67b1",
-            "reference": "c79c361bca8e5ada6a47603875a3c964d03b67b1",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.9",
-            "psr/log": "~1.0"
-        },
-        "conflict": {
-            "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2"
-        },
-        "require-dev": {
-            "symfony/class-loader": "~2.2",
-            "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2",
-            "symfony/phpunit-bridge": "~2.7"
-        },
-        "time": "2015-09-14 08:41:38",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.7-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Debug\\": ""
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
-        ],
-        "description": "Symfony Debug Component",
-        "homepage": "https://symfony.com"
-    },
-    {
-        "name": "symfony/http-kernel",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/symfony/http-kernel.git",
-            "reference": "353aa457424262d7d4e4289ea483145921cffcb5"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/symfony/http-kernel/zipball/353aa457424262d7d4e4289ea483145921cffcb5",
-            "reference": "353aa457424262d7d4e4289ea483145921cffcb5",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.9",
-            "psr/log": "~1.0",
-            "symfony/debug": "~2.6,>=2.6.2",
-            "symfony/event-dispatcher": "~2.6,>=2.6.7",
-            "symfony/http-foundation": "~2.5,>=2.5.4"
-        },
-        "conflict": {
-            "symfony/config": "<2.7"
-        },
-        "require-dev": {
-            "symfony/browser-kit": "~2.3",
-            "symfony/class-loader": "~2.1",
-            "symfony/config": "~2.7",
-            "symfony/console": "~2.3",
-            "symfony/css-selector": "~2.0,>=2.0.5",
-            "symfony/dependency-injection": "~2.2",
-            "symfony/dom-crawler": "~2.0,>=2.0.5",
-            "symfony/expression-language": "~2.4",
-            "symfony/finder": "~2.0,>=2.0.5",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/process": "~2.0,>=2.0.5",
-            "symfony/routing": "~2.2",
-            "symfony/stopwatch": "~2.3",
-            "symfony/templating": "~2.2",
-            "symfony/translation": "~2.0,>=2.0.5",
-            "symfony/var-dumper": "~2.6"
-        },
-        "suggest": {
-            "symfony/browser-kit": "",
-            "symfony/class-loader": "",
-            "symfony/config": "",
-            "symfony/console": "",
-            "symfony/dependency-injection": "",
-            "symfony/finder": "",
-            "symfony/var-dumper": ""
-        },
-        "time": "2015-09-25 11:16:52",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.7-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\HttpKernel\\": ""
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
-        ],
-        "description": "Symfony HttpKernel Component",
-        "homepage": "https://symfony.com"
-    },
-    {
         "name": "stack/builder",
         "version": "v1.0.3",
         "version_normalized": "1.0.3.0",
@@ -1257,79 +1063,6 @@
         ]
     },
     {
-        "name": "symfony/routing",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/symfony/routing.git",
-            "reference": "6c5fae83efa20baf166fcf4582f57094e9f60f16"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/symfony/routing/zipball/6c5fae83efa20baf166fcf4582f57094e9f60f16",
-            "reference": "6c5fae83efa20baf166fcf4582f57094e9f60f16",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.9"
-        },
-        "conflict": {
-            "symfony/config": "<2.7"
-        },
-        "require-dev": {
-            "doctrine/annotations": "~1.0",
-            "doctrine/common": "~2.2",
-            "psr/log": "~1.0",
-            "symfony/config": "~2.7",
-            "symfony/expression-language": "~2.4",
-            "symfony/http-foundation": "~2.3",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/yaml": "~2.0,>=2.0.5"
-        },
-        "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": "2015-09-14 14:14:09",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.7-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Routing\\": ""
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
-        ],
-        "description": "Symfony Routing Component",
-        "homepage": "https://symfony.com",
-        "keywords": [
-            "router",
-            "routing",
-            "uri",
-            "url"
-        ]
-    },
-    {
         "name": "symfony-cmf/routing",
         "version": "1.3.0",
         "version_normalized": "1.3.0.0",
@@ -1389,38 +1122,37 @@
         ]
     },
     {
-        "name": "symfony/class-loader",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "symfony/psr-http-message-bridge",
+        "version": "v0.2",
+        "version_normalized": "0.2.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/class-loader.git",
-            "reference": "d957ea6295d7016e20d7eff33a6c1deef819c0d4"
+            "url": "https://github.com/symfony/psr-http-message-bridge.git",
+            "reference": "dc7e308e1dc2898a46776e2221a643cb08315453"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/class-loader/zipball/d957ea6295d7016e20d7eff33a6c1deef819c0d4",
-            "reference": "d957ea6295d7016e20d7eff33a6c1deef819c0d4",
+            "url": "https://api.github.com/repos/symfony/psr-http-message-bridge/zipball/dc7e308e1dc2898a46776e2221a643cb08315453",
+            "reference": "dc7e308e1dc2898a46776e2221a643cb08315453",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.3.3",
+            "psr/http-message": "~1.0",
+            "symfony/http-foundation": "~2.3|~3.0"
         },
         "require-dev": {
-            "symfony/finder": "~2.0,>=2.0.5",
-            "symfony/phpunit-bridge": "~2.7"
+            "symfony/phpunit-bridge": "~2.7|~3.0"
         },
-        "time": "2015-08-26 17:56:37",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.7-dev"
-            }
+        "suggest": {
+            "zendframework/zend-diactoros": "To use the Zend Diactoros factory"
         },
+        "time": "2015-05-29 17:57:12",
+        "type": "symfony-bridge",
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\ClassLoader\\": ""
+                "Symfony\\Bridge\\PsrHttpMessage\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1429,424 +1161,401 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Symfony Community",
+                "homepage": "http://symfony.com/contributors"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             }
         ],
-        "description": "Symfony ClassLoader Component",
-        "homepage": "https://symfony.com"
+        "description": "PSR HTTP message bridge",
+        "homepage": "http://symfony.com",
+        "keywords": [
+            "http",
+            "http-message",
+            "psr-7"
+        ]
     },
     {
-        "name": "symfony/console",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "twig/twig",
+        "version": "v1.22.2",
+        "version_normalized": "1.22.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/console.git",
-            "reference": "06cb17c013a82f94a3d840682b49425cd00a2161"
+            "url": "https://github.com/twigphp/Twig.git",
+            "reference": "79249fc8c9ff62e41e217e0c630e2e00bcadda6a"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/console/zipball/06cb17c013a82f94a3d840682b49425cd00a2161",
-            "reference": "06cb17c013a82f94a3d840682b49425cd00a2161",
+            "url": "https://api.github.com/repos/twigphp/Twig/zipball/79249fc8c9ff62e41e217e0c630e2e00bcadda6a",
+            "reference": "79249fc8c9ff62e41e217e0c630e2e00bcadda6a",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.2.7"
         },
         "require-dev": {
-            "psr/log": "~1.0",
-            "symfony/event-dispatcher": "~2.1",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/process": "~2.1"
-        },
-        "suggest": {
-            "psr/log": "For using the console logger",
-            "symfony/event-dispatcher": "",
-            "symfony/process": ""
+            "symfony/debug": "~2.7",
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-09-25 08:32:23",
+        "time": "2015-09-22 13:59:32",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.22-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\Console\\": ""
+            "psr-0": {
+                "Twig_": "lib/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
                 "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "email": "fabien@symfony.com",
+                "homepage": "http://fabien.potencier.org",
+                "role": "Lead Developer"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Armin Ronacher",
+                "email": "armin.ronacher@active-4.com",
+                "role": "Project Founder"
+            },
+            {
+                "name": "Twig Team",
+                "homepage": "http://twig.sensiolabs.org/contributors",
+                "role": "Contributors"
             }
         ],
-        "description": "Symfony Console Component",
-        "homepage": "https://symfony.com"
+        "description": "Twig, the flexible, fast, and secure template language for PHP",
+        "homepage": "http://twig.sensiolabs.org",
+        "keywords": [
+            "templating"
+        ]
     },
     {
-        "name": "symfony/dependency-injection",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "zendframework/zend-diactoros",
+        "version": "1.1.3",
+        "version_normalized": "1.1.3.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/dependency-injection.git",
-            "reference": "422c3819b110f610d79c6f1dc38af23787dc790e"
+            "url": "https://github.com/zendframework/zend-diactoros.git",
+            "reference": "e2f5c12916c74da384058d0dfbc7fbc0b03d1181"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/422c3819b110f610d79c6f1dc38af23787dc790e",
-            "reference": "422c3819b110f610d79c6f1dc38af23787dc790e",
+            "url": "https://api.github.com/repos/zendframework/zend-diactoros/zipball/e2f5c12916c74da384058d0dfbc7fbc0b03d1181",
+            "reference": "e2f5c12916c74da384058d0dfbc7fbc0b03d1181",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.4",
+            "psr/http-message": "~1.0"
         },
-        "conflict": {
-            "symfony/expression-language": "<2.6"
+        "provide": {
+            "psr/http-message-implementation": "~1.0.0"
         },
         "require-dev": {
-            "symfony/config": "~2.2",
-            "symfony/expression-language": "~2.6",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/yaml": "~2.1"
-        },
-        "suggest": {
-            "symfony/config": "",
-            "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
-            "symfony/yaml": ""
+            "phpunit/phpunit": "~4.6",
+            "squizlabs/php_codesniffer": "^2.3.1"
         },
-        "time": "2015-09-15 08:30:42",
+        "time": "2015-08-10 20:04:20",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.0-dev",
+                "dev-develop": "1.1-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\DependencyInjection\\": ""
+                "Zend\\Diactoros\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
+            "BSD-2-Clause"
         ],
-        "description": "Symfony DependencyInjection Component",
-        "homepage": "https://symfony.com"
+        "description": "PSR HTTP Message implementations",
+        "homepage": "https://github.com/zendframework/zend-diactoros",
+        "keywords": [
+            "http",
+            "psr",
+            "psr-7"
+        ]
     },
     {
-        "name": "symfony/process",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "zendframework/zend-stdlib",
+        "version": "2.7.3",
+        "version_normalized": "2.7.3.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/process.git",
-            "reference": "b27c8e317922cd3cdd3600850273cf6b82b2e8e9"
+            "url": "https://github.com/zendframework/zend-stdlib.git",
+            "reference": "8ac0c77ff567fcf49b58689ee3bfa7595be102bc"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/process/zipball/b27c8e317922cd3cdd3600850273cf6b82b2e8e9",
-            "reference": "b27c8e317922cd3cdd3600850273cf6b82b2e8e9",
+            "url": "https://api.github.com/repos/zendframework/zend-stdlib/zipball/8ac0c77ff567fcf49b58689ee3bfa7595be102bc",
+            "reference": "8ac0c77ff567fcf49b58689ee3bfa7595be102bc",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.5",
+            "zendframework/zend-hydrator": "~1.0"
         },
         "require-dev": {
-            "symfony/phpunit-bridge": "~2.7"
+            "athletic/athletic": "~0.1",
+            "fabpot/php-cs-fixer": "1.7.*",
+            "phpunit/phpunit": "~4.0",
+            "zendframework/zend-config": "~2.5",
+            "zendframework/zend-eventmanager": "~2.5",
+            "zendframework/zend-filter": "~2.5",
+            "zendframework/zend-inputfilter": "~2.5",
+            "zendframework/zend-serializer": "~2.5",
+            "zendframework/zend-servicemanager": "~2.5"
+        },
+        "suggest": {
+            "zendframework/zend-eventmanager": "To support aggregate hydrator usage",
+            "zendframework/zend-filter": "To support naming strategy hydrator usage",
+            "zendframework/zend-serializer": "Zend\\Serializer component",
+            "zendframework/zend-servicemanager": "To support hydrator plugin manager usage"
         },
-        "time": "2015-09-19 19:59:23",
+        "time": "2015-09-25 04:06:33",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "2.7-dev",
+                "dev-develop": "2.8-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\Process\\": ""
+                "Zend\\Stdlib\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
+            "BSD-3-Clause"
         ],
-        "description": "Symfony Process Component",
-        "homepage": "https://symfony.com"
+        "homepage": "https://github.com/zendframework/zend-stdlib",
+        "keywords": [
+            "stdlib",
+            "zf2"
+        ]
     },
     {
-        "name": "symfony/psr-http-message-bridge",
-        "version": "v0.2",
-        "version_normalized": "0.2.0.0",
+        "name": "zendframework/zend-hydrator",
+        "version": "1.0.0",
+        "version_normalized": "1.0.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/psr-http-message-bridge.git",
-            "reference": "dc7e308e1dc2898a46776e2221a643cb08315453"
+            "url": "https://github.com/zendframework/zend-hydrator.git",
+            "reference": "f3ed8b833355140350bbed98d8a7b8b66875903f"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/psr-http-message-bridge/zipball/dc7e308e1dc2898a46776e2221a643cb08315453",
-            "reference": "dc7e308e1dc2898a46776e2221a643cb08315453",
+            "url": "https://api.github.com/repos/zendframework/zend-hydrator/zipball/f3ed8b833355140350bbed98d8a7b8b66875903f",
+            "reference": "f3ed8b833355140350bbed98d8a7b8b66875903f",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "psr/http-message": "~1.0",
-            "symfony/http-foundation": "~2.3|~3.0"
+            "php": ">=5.5",
+            "zendframework/zend-stdlib": "^2.5.1"
         },
         "require-dev": {
-            "symfony/phpunit-bridge": "~2.7|~3.0"
+            "phpunit/phpunit": "~4.0",
+            "squizlabs/php_codesniffer": "^2.0@dev",
+            "zendframework/zend-eventmanager": "^2.5.1",
+            "zendframework/zend-filter": "^2.5.1",
+            "zendframework/zend-inputfilter": "^2.5.1",
+            "zendframework/zend-serializer": "^2.5.1",
+            "zendframework/zend-servicemanager": "^2.5.1"
         },
         "suggest": {
-            "zendframework/zend-diactoros": "To use the Zend Diactoros factory"
+            "zendframework/zend-eventmanager": "^2.5.1, to support aggregate hydrator usage",
+            "zendframework/zend-filter": "^2.5.1, to support naming strategy hydrator usage",
+            "zendframework/zend-serializer": "^2.5.1, to use the SerializableStrategy",
+            "zendframework/zend-servicemanager": "^2.5.1, to support hydrator plugin manager usage"
+        },
+        "time": "2015-09-17 14:06:43",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.0-dev",
+                "dev-develop": "1.1-dev"
+            }
         },
-        "time": "2015-05-29 17:57:12",
-        "type": "symfony-bridge",
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Bridge\\PsrHttpMessage\\": ""
+                "Zend\\Hydrator\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Symfony Community",
-                "homepage": "http://symfony.com/contributors"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            }
+            "BSD-3-Clause"
         ],
-        "description": "PSR HTTP message bridge",
-        "homepage": "http://symfony.com",
+        "homepage": "https://github.com/zendframework/zend-hydrator",
         "keywords": [
-            "http",
-            "http-message",
-            "psr-7"
+            "hydrator",
+            "zf2"
         ]
     },
     {
-        "name": "symfony/serializer",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/symfony/serializer.git",
-            "reference": "baf24f86a8656eea9c80988f332e51461bfcb67f"
+        "name": "zendframework/zend-escaper",
+        "version": "2.5.1",
+        "version_normalized": "2.5.1.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/zendframework/zend-escaper.git",
+            "reference": "a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/serializer/zipball/baf24f86a8656eea9c80988f332e51461bfcb67f",
-            "reference": "baf24f86a8656eea9c80988f332e51461bfcb67f",
+            "url": "https://api.github.com/repos/zendframework/zend-escaper/zipball/a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73",
+            "reference": "a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.3.23"
         },
         "require-dev": {
-            "doctrine/annotations": "~1.0",
-            "doctrine/cache": "~1.0",
-            "symfony/config": "~2.2",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/property-access": "~2.3",
-            "symfony/yaml": "~2.0,>=2.0.5"
-        },
-        "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.",
-            "symfony/config": "For using the XML mapping loader.",
-            "symfony/property-access": "For using the ObjectNormalizer.",
-            "symfony/yaml": "For using the default YAML mapping loader."
+            "fabpot/php-cs-fixer": "1.7.*",
+            "phpunit/phpunit": "~4.0"
         },
-        "time": "2015-08-31 16:44:53",
+        "time": "2015-06-03 14:05:37",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "2.5-dev",
+                "dev-develop": "2.6-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\Serializer\\": ""
+                "Zend\\Escaper\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
+            "BSD-3-Clause"
         ],
-        "description": "Symfony Serializer Component",
-        "homepage": "https://symfony.com"
+        "homepage": "https://github.com/zendframework/zend-escaper",
+        "keywords": [
+            "escaper",
+            "zf2"
+        ]
     },
     {
-        "name": "symfony/translation",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "zendframework/zend-feed",
+        "version": "2.5.2",
+        "version_normalized": "2.5.2.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/translation.git",
-            "reference": "485877661835e188cd78345c6d4eef1290d17571"
+            "url": "https://github.com/zendframework/zend-feed.git",
+            "reference": "0661345b82b51428619e05d3aadd3de65b57fa54"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/translation/zipball/485877661835e188cd78345c6d4eef1290d17571",
-            "reference": "485877661835e188cd78345c6d4eef1290d17571",
+            "url": "https://api.github.com/repos/zendframework/zend-feed/zipball/0661345b82b51428619e05d3aadd3de65b57fa54",
+            "reference": "0661345b82b51428619e05d3aadd3de65b57fa54",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
-        },
-        "conflict": {
-            "symfony/config": "<2.7"
+            "php": ">=5.5",
+            "zendframework/zend-escaper": "~2.5",
+            "zendframework/zend-stdlib": "~2.5"
         },
         "require-dev": {
-            "psr/log": "~1.0",
-            "symfony/config": "~2.7",
-            "symfony/intl": "~2.4",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/yaml": "~2.2"
+            "fabpot/php-cs-fixer": "1.7.*",
+            "phpunit/phpunit": "~4.0",
+            "zendframework/zend-cache": "~2.5",
+            "zendframework/zend-db": "~2.5",
+            "zendframework/zend-http": "~2.5",
+            "zendframework/zend-servicemanager": "~2.5",
+            "zendframework/zend-validator": "~2.5"
         },
         "suggest": {
-            "psr/log": "To use logging capability in translator",
-            "symfony/config": "",
-            "symfony/yaml": ""
+            "zendframework/zend-cache": "Zend\\Cache component",
+            "zendframework/zend-db": "Zend\\Db component",
+            "zendframework/zend-http": "Zend\\Http for PubSubHubbub, and optionally for use with Zend\\Feed\\Reader",
+            "zendframework/zend-servicemanager": "Zend\\ServiceManager component, for default/recommended ExtensionManager implementations",
+            "zendframework/zend-validator": "Zend\\Validator component"
         },
-        "time": "2015-09-06 08:36:38",
+        "time": "2015-08-04 21:39:18",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "2.5-dev",
+                "dev-develop": "2.6-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\Translation\\": ""
+                "Zend\\Feed\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
+            "BSD-3-Clause"
         ],
-        "description": "Symfony Translation Component",
-        "homepage": "https://symfony.com"
+        "description": "provides functionality for consuming RSS and Atom feeds",
+        "homepage": "https://github.com/zendframework/zend-feed",
+        "keywords": [
+            "feed",
+            "zf2"
+        ]
     },
     {
-        "name": "symfony/validator",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "guzzlehttp/guzzle",
+        "version": "6.1.0",
+        "version_normalized": "6.1.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/validator.git",
-            "reference": "b359dc71e253ce6eb69eefbd5088032241e7a66f"
+            "url": "https://github.com/guzzle/guzzle.git",
+            "reference": "66fd14b4d0b8f2389eaf37c5458608c7cb793a81"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/validator/zipball/b359dc71e253ce6eb69eefbd5088032241e7a66f",
-            "reference": "b359dc71e253ce6eb69eefbd5088032241e7a66f",
+            "url": "https://api.github.com/repos/guzzle/guzzle/zipball/66fd14b4d0b8f2389eaf37c5458608c7cb793a81",
+            "reference": "66fd14b4d0b8f2389eaf37c5458608c7cb793a81",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9",
-            "symfony/translation": "~2.4"
+            "guzzlehttp/promises": "~1.0",
+            "guzzlehttp/psr7": "~1.1",
+            "php": ">=5.5.0"
         },
         "require-dev": {
-            "doctrine/annotations": "~1.0",
-            "doctrine/cache": "~1.0",
-            "egulias/email-validator": "~1.2,>=1.2.1",
-            "symfony/config": "~2.2",
-            "symfony/expression-language": "~2.4",
-            "symfony/http-foundation": "~2.1",
-            "symfony/intl": "~2.4",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/property-access": "~2.3",
-            "symfony/yaml": "~2.0,>=2.0.5"
-        },
-        "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-curl": "*",
+            "phpunit/phpunit": "~4.0",
+            "psr/log": "~1.0"
         },
-        "time": "2015-09-23 11:13:27",
+        "time": "2015-09-08 17:36:26",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "6.1-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
+            "files": [
+                "src/functions_include.php"
+            ],
             "psr-4": {
-                "Symfony\\Component\\Validator\\": ""
+                "GuzzleHttp\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -1855,621 +1564,863 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Michael Dowling",
+                "email": "mtdowling@gmail.com",
+                "homepage": "https://github.com/mtdowling"
             }
         ],
-        "description": "Symfony Validator Component",
-        "homepage": "https://symfony.com"
+        "description": "Guzzle is a PHP HTTP client library",
+        "homepage": "http://guzzlephp.org/",
+        "keywords": [
+            "client",
+            "curl",
+            "framework",
+            "http",
+            "http client",
+            "rest",
+            "web service"
+        ]
     },
     {
-        "name": "twig/twig",
-        "version": "v1.22.2",
-        "version_normalized": "1.22.2.0",
+        "name": "fabpot/goutte",
+        "version": "v3.1.1",
+        "version_normalized": "3.1.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/twigphp/Twig.git",
-            "reference": "79249fc8c9ff62e41e217e0c630e2e00bcadda6a"
+            "url": "https://github.com/FriendsOfPHP/Goutte.git",
+            "reference": "751a3dc5c4d86ec3e97c9f27133ef9694d9243cc"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/twigphp/Twig/zipball/79249fc8c9ff62e41e217e0c630e2e00bcadda6a",
-            "reference": "79249fc8c9ff62e41e217e0c630e2e00bcadda6a",
+            "url": "https://api.github.com/repos/FriendsOfPHP/Goutte/zipball/751a3dc5c4d86ec3e97c9f27133ef9694d9243cc",
+            "reference": "751a3dc5c4d86ec3e97c9f27133ef9694d9243cc",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.2.7"
-        },
-        "require-dev": {
-            "symfony/debug": "~2.7",
-            "symfony/phpunit-bridge": "~2.7"
+            "guzzlehttp/guzzle": "^6.0",
+            "php": ">=5.5.0",
+            "symfony/browser-kit": "~2.1",
+            "symfony/css-selector": "~2.1",
+            "symfony/dom-crawler": "~2.1"
         },
-        "time": "2015-09-22 13:59:32",
-        "type": "library",
+        "time": "2015-08-29 16:16:56",
+        "type": "application",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.22-dev"
+                "dev-master": "3.1-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Twig_": "lib/"
+            "psr-4": {
+                "Goutte\\": "Goutte"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "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": "http://twig.sensiolabs.org/contributors",
-                "role": "Contributors"
+                "email": "fabien@symfony.com"
             }
         ],
-        "description": "Twig, the flexible, fast, and secure template language for PHP",
-        "homepage": "http://twig.sensiolabs.org",
+        "description": "A simple PHP Web Scraper",
+        "homepage": "https://github.com/FriendsOfPHP/Goutte",
         "keywords": [
-            "templating"
+            "scraper"
         ]
     },
     {
-        "name": "zendframework/zend-diactoros",
-        "version": "1.1.3",
-        "version_normalized": "1.1.3.0",
+        "name": "behat/mink",
+        "version": "v1.7.0",
+        "version_normalized": "1.7.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/zendframework/zend-diactoros.git",
-            "reference": "e2f5c12916c74da384058d0dfbc7fbc0b03d1181"
+            "url": "https://github.com/minkphp/Mink.git",
+            "reference": "6c129030ec2cc029905cf969a56ca8f087b2dfdf"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-diactoros/zipball/e2f5c12916c74da384058d0dfbc7fbc0b03d1181",
-            "reference": "e2f5c12916c74da384058d0dfbc7fbc0b03d1181",
+            "url": "https://api.github.com/repos/minkphp/Mink/zipball/6c129030ec2cc029905cf969a56ca8f087b2dfdf",
+            "reference": "6c129030ec2cc029905cf969a56ca8f087b2dfdf",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.4",
-            "psr/http-message": "~1.0"
-        },
-        "provide": {
-            "psr/http-message-implementation": "~1.0.0"
+            "php": ">=5.3.1",
+            "symfony/css-selector": "~2.1"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.6",
-            "squizlabs/php_codesniffer": "^2.3.1"
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-08-10 20:04:20",
+        "suggest": {
+            "behat/mink-browserkit-driver": "extremely fast headless driver for Symfony\\Kernel-based apps (Sf2, Silex)",
+            "behat/mink-goutte-driver": "fast headless driver for any app without JS emulation",
+            "behat/mink-selenium2-driver": "slow, but JS-enabled driver for any app (requires Selenium2)",
+            "behat/mink-zombie-driver": "fast and JS-enabled headless driver for any app (requires node.js)"
+        },
+        "time": "2015-09-20 20:24:03",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0-dev",
-                "dev-develop": "1.1-dev"
+                "dev-master": "1.7.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Zend\\Diactoros\\": "src/"
+                "Behat\\Mink\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-2-Clause"
+            "MIT"
         ],
-        "description": "PSR HTTP Message implementations",
-        "homepage": "https://github.com/zendframework/zend-diactoros",
+        "authors": [
+            {
+                "name": "Konstantin Kudryashov",
+                "email": "ever.zet@gmail.com",
+                "homepage": "http://everzet.com"
+            }
+        ],
+        "description": "Browser controller/emulator abstraction for PHP",
+        "homepage": "http://mink.behat.org/",
         "keywords": [
-            "http",
-            "psr",
-            "psr-7"
+            "browser",
+            "testing",
+            "web"
         ]
     },
     {
-        "name": "zendframework/zend-stdlib",
-        "version": "2.7.3",
-        "version_normalized": "2.7.3.0",
+        "name": "behat/mink-browserkit-driver",
+        "version": "v1.3.0",
+        "version_normalized": "1.3.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/zendframework/zend-stdlib.git",
-            "reference": "8ac0c77ff567fcf49b58689ee3bfa7595be102bc"
+            "url": "https://github.com/minkphp/MinkBrowserKitDriver.git",
+            "reference": "da47df1593dac132f04d24e7277ef40d33d9f201"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-stdlib/zipball/8ac0c77ff567fcf49b58689ee3bfa7595be102bc",
-            "reference": "8ac0c77ff567fcf49b58689ee3bfa7595be102bc",
+            "url": "https://api.github.com/repos/minkphp/MinkBrowserKitDriver/zipball/da47df1593dac132f04d24e7277ef40d33d9f201",
+            "reference": "da47df1593dac132f04d24e7277ef40d33d9f201",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.5",
-            "zendframework/zend-hydrator": "~1.0"
+            "behat/mink": "~1.7@dev",
+            "php": ">=5.3.6",
+            "symfony/browser-kit": "~2.3",
+            "symfony/dom-crawler": "~2.3"
         },
         "require-dev": {
-            "athletic/athletic": "~0.1",
-            "fabpot/php-cs-fixer": "1.7.*",
-            "phpunit/phpunit": "~4.0",
-            "zendframework/zend-config": "~2.5",
-            "zendframework/zend-eventmanager": "~2.5",
-            "zendframework/zend-filter": "~2.5",
-            "zendframework/zend-inputfilter": "~2.5",
-            "zendframework/zend-serializer": "~2.5",
-            "zendframework/zend-servicemanager": "~2.5"
-        },
-        "suggest": {
-            "zendframework/zend-eventmanager": "To support aggregate hydrator usage",
-            "zendframework/zend-filter": "To support naming strategy hydrator usage",
-            "zendframework/zend-serializer": "Zend\\Serializer component",
-            "zendframework/zend-servicemanager": "To support hydrator plugin manager usage"
+            "silex/silex": "~1.2",
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-09-25 04:06:33",
-        "type": "library",
+        "time": "2015-09-21 20:56:13",
+        "type": "mink-driver",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev",
-                "dev-develop": "2.8-dev"
+                "dev-master": "1.3.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Zend\\Stdlib\\": "src/"
+                "Behat\\Mink\\Driver\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
-        "homepage": "https://github.com/zendframework/zend-stdlib",
+        "authors": [
+            {
+                "name": "Konstantin Kudryashov",
+                "email": "ever.zet@gmail.com",
+                "homepage": "http://everzet.com"
+            }
+        ],
+        "description": "Symfony2 BrowserKit driver for Mink framework",
+        "homepage": "http://mink.behat.org/",
         "keywords": [
-            "stdlib",
-            "zf2"
+            "Mink",
+            "Symfony2",
+            "browser",
+            "testing"
         ]
     },
     {
-        "name": "zendframework/zend-hydrator",
-        "version": "1.0.0",
-        "version_normalized": "1.0.0.0",
+        "name": "behat/mink-goutte-driver",
+        "version": "v1.2.0",
+        "version_normalized": "1.2.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/zendframework/zend-hydrator.git",
-            "reference": "f3ed8b833355140350bbed98d8a7b8b66875903f"
+            "url": "https://github.com/minkphp/MinkGoutteDriver.git",
+            "reference": "c8e254f127d6f2242b994afd4339fb62d471df3f"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-hydrator/zipball/f3ed8b833355140350bbed98d8a7b8b66875903f",
-            "reference": "f3ed8b833355140350bbed98d8a7b8b66875903f",
+            "url": "https://api.github.com/repos/minkphp/MinkGoutteDriver/zipball/c8e254f127d6f2242b994afd4339fb62d471df3f",
+            "reference": "c8e254f127d6f2242b994afd4339fb62d471df3f",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.5",
-            "zendframework/zend-stdlib": "^2.5.1"
+            "behat/mink": "~1.6@dev",
+            "behat/mink-browserkit-driver": "~1.2@dev",
+            "fabpot/goutte": "~1.0.4|~2.0|~3.1",
+            "php": ">=5.3.1"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.0",
-            "squizlabs/php_codesniffer": "^2.0@dev",
-            "zendframework/zend-eventmanager": "^2.5.1",
-            "zendframework/zend-filter": "^2.5.1",
-            "zendframework/zend-inputfilter": "^2.5.1",
-            "zendframework/zend-serializer": "^2.5.1",
-            "zendframework/zend-servicemanager": "^2.5.1"
-        },
-        "suggest": {
-            "zendframework/zend-eventmanager": "^2.5.1, to support aggregate hydrator usage",
-            "zendframework/zend-filter": "^2.5.1, to support naming strategy hydrator usage",
-            "zendframework/zend-serializer": "^2.5.1, to use the SerializableStrategy",
-            "zendframework/zend-servicemanager": "^2.5.1, to support hydrator plugin manager usage"
+            "symfony/phpunit-bridge": "~2.7"
         },
-        "time": "2015-09-17 14:06:43",
-        "type": "library",
+        "time": "2015-09-21 21:31:11",
+        "type": "mink-driver",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0-dev",
-                "dev-develop": "1.1-dev"
+                "dev-master": "1.2.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Zend\\Hydrator\\": "src/"
+                "Behat\\Mink\\Driver\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
-        "homepage": "https://github.com/zendframework/zend-hydrator",
+        "authors": [
+            {
+                "name": "Konstantin Kudryashov",
+                "email": "ever.zet@gmail.com",
+                "homepage": "http://everzet.com"
+            }
+        ],
+        "description": "Goutte driver for Mink framework",
+        "homepage": "http://mink.behat.org/",
         "keywords": [
-            "hydrator",
-            "zf2"
+            "browser",
+            "goutte",
+            "headless",
+            "testing"
         ]
     },
     {
-        "name": "zendframework/zend-escaper",
-        "version": "2.5.1",
-        "version_normalized": "2.5.1.0",
+        "name": "mikey179/vfsStream",
+        "version": "v1.6.0",
+        "version_normalized": "1.6.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/zendframework/zend-escaper.git",
-            "reference": "a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73"
+            "url": "https://github.com/mikey179/vfsStream.git",
+            "reference": "73bcb605b741a7d5044b47592338c633788b0eb7"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-escaper/zipball/a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73",
-            "reference": "a4b227d8a477f4e7e9073f8e0a7ae7dbd3104a73",
+            "url": "https://api.github.com/repos/mikey179/vfsStream/zipball/73bcb605b741a7d5044b47592338c633788b0eb7",
+            "reference": "73bcb605b741a7d5044b47592338c633788b0eb7",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.23"
+            "php": ">=5.3.0"
         },
         "require-dev": {
-            "fabpot/php-cs-fixer": "1.7.*",
-            "phpunit/phpunit": "~4.0"
+            "phpunit/phpunit": "~4.5"
         },
-        "time": "2015-06-03 14:05:37",
+        "time": "2015-10-06 16:59:57",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev",
-                "dev-develop": "2.6-dev"
+                "dev-master": "1.6.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Zend\\Escaper\\": "src/"
+            "psr-0": {
+                "org\\bovigo\\vfs\\": "src/main/php"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
             "BSD-3-Clause"
         ],
-        "homepage": "https://github.com/zendframework/zend-escaper",
-        "keywords": [
-            "escaper",
-            "zf2"
-        ]
+        "authors": [
+            {
+                "name": "Frank Kleine",
+                "homepage": "http://frankkleine.de/",
+                "role": "Developer"
+            }
+        ],
+        "description": "Virtual file system to mock the real file system in unit tests.",
+        "homepage": "http://vfs.bovigo.org/"
     },
     {
-        "name": "zendframework/zend-feed",
-        "version": "2.5.2",
-        "version_normalized": "2.5.2.0",
+        "name": "phpdocumentor/reflection-docblock",
+        "version": "2.0.4",
+        "version_normalized": "2.0.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/zendframework/zend-feed.git",
-            "reference": "0661345b82b51428619e05d3aadd3de65b57fa54"
+            "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
+            "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/zendframework/zend-feed/zipball/0661345b82b51428619e05d3aadd3de65b57fa54",
-            "reference": "0661345b82b51428619e05d3aadd3de65b57fa54",
+            "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/d68dbdc53dc358a816f00b300704702b2eaff7b8",
+            "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.5",
-            "zendframework/zend-escaper": "~2.5",
-            "zendframework/zend-stdlib": "~2.5"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "fabpot/php-cs-fixer": "1.7.*",
-            "phpunit/phpunit": "~4.0",
-            "zendframework/zend-cache": "~2.5",
-            "zendframework/zend-db": "~2.5",
-            "zendframework/zend-http": "~2.5",
-            "zendframework/zend-servicemanager": "~2.5",
-            "zendframework/zend-validator": "~2.5"
+            "phpunit/phpunit": "~4.0"
         },
         "suggest": {
-            "zendframework/zend-cache": "Zend\\Cache component",
-            "zendframework/zend-db": "Zend\\Db component",
-            "zendframework/zend-http": "Zend\\Http for PubSubHubbub, and optionally for use with Zend\\Feed\\Reader",
-            "zendframework/zend-servicemanager": "Zend\\ServiceManager component, for default/recommended ExtensionManager implementations",
-            "zendframework/zend-validator": "Zend\\Validator component"
+            "dflydev/markdown": "~1.0",
+            "erusev/parsedown": "~1.0"
         },
-        "time": "2015-08-04 21:39:18",
+        "time": "2015-02-03 12:10:50",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.5-dev",
-                "dev-develop": "2.6-dev"
+                "dev-master": "2.0.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Zend\\Feed\\": "src/"
+            "psr-0": {
+                "phpDocumentor": [
+                    "src/"
+                ]
             }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
-        "description": "provides functionality for consuming RSS and Atom feeds",
-        "homepage": "https://github.com/zendframework/zend-feed",
-        "keywords": [
-            "feed",
-            "zf2"
+        "authors": [
+            {
+                "name": "Mike van Riel",
+                "email": "mike.vanriel@naenius.com"
+            }
         ]
     },
     {
-        "name": "symfony/dom-crawler",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "phpunit/php-token-stream",
+        "version": "1.4.8",
+        "version_normalized": "1.4.8.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/dom-crawler.git",
-            "reference": "2e185ca136399f902b948694987e62c80099c052"
+            "url": "https://github.com/sebastianbergmann/php-token-stream.git",
+            "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/2e185ca136399f902b948694987e62c80099c052",
-            "reference": "2e185ca136399f902b948694987e62c80099c052",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da",
+            "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "ext-tokenizer": "*",
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "symfony/css-selector": "~2.3",
-            "symfony/phpunit-bridge": "~2.7"
+            "phpunit/phpunit": "~4.2"
+        },
+        "time": "2015-09-15 10:49:45",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.4-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "classmap": [
+                "src/"
+            ]
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "BSD-3-Clause"
+        ],
+        "authors": [
+            {
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
+            }
+        ],
+        "description": "Wrapper around PHP's tokenizer extension.",
+        "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
+        "keywords": [
+            "tokenizer"
+        ]
+    },
+    {
+        "name": "sebastian/version",
+        "version": "1.0.6",
+        "version_normalized": "1.0.6.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/sebastianbergmann/version.git",
+            "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
+            "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
+            "shasum": ""
+        },
+        "time": "2015-06-21 13:59:46",
+        "type": "library",
+        "installation-source": "dist",
+        "autoload": {
+            "classmap": [
+                "src/"
+            ]
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "BSD-3-Clause"
+        ],
+        "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/global-state",
+        "version": "1.0.0",
+        "version_normalized": "1.0.0.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/sebastianbergmann/global-state.git",
+            "reference": "c7428acdb62ece0a45e6306f1ae85e1c05b09c01"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/c7428acdb62ece0a45e6306f1ae85e1c05b09c01",
+            "reference": "c7428acdb62ece0a45e6306f1ae85e1c05b09c01",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.3"
+        },
+        "require-dev": {
+            "phpunit/phpunit": "~4.2"
         },
         "suggest": {
-            "symfony/css-selector": ""
+            "ext-uopz": "*"
+        },
+        "time": "2014-10-06 09:23:50",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.0-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "classmap": [
+                "src/"
+            ]
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "BSD-3-Clause"
+        ],
+        "authors": [
+            {
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
+            }
+        ],
+        "description": "Snapshotting of global state",
+        "homepage": "http://www.github.com/sebastianbergmann/global-state",
+        "keywords": [
+            "global state"
+        ]
+    },
+    {
+        "name": "sebastian/recursion-context",
+        "version": "1.0.1",
+        "version_normalized": "1.0.1.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/sebastianbergmann/recursion-context.git",
+            "reference": "994d4a811bafe801fb06dccbee797863ba2792ba"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/994d4a811bafe801fb06dccbee797863ba2792ba",
+            "reference": "994d4a811bafe801fb06dccbee797863ba2792ba",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.3"
+        },
+        "require-dev": {
+            "phpunit/phpunit": "~4.4"
+        },
+        "time": "2015-06-21 08:04:50",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.0.x-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "classmap": [
+                "src/"
+            ]
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "BSD-3-Clause"
+        ],
+        "authors": [
+            {
+                "name": "Jeff Welch",
+                "email": "whatthejeff@gmail.com"
+            },
+            {
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
+            },
+            {
+                "name": "Adam Harvey",
+                "email": "aharvey@php.net"
+            }
+        ],
+        "description": "Provides functionality to recursively process PHP variables",
+        "homepage": "http://www.github.com/sebastianbergmann/recursion-context"
+    },
+    {
+        "name": "sebastian/exporter",
+        "version": "1.2.1",
+        "version_normalized": "1.2.1.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/sebastianbergmann/exporter.git",
+            "reference": "7ae5513327cb536431847bcc0c10edba2701064e"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e",
+            "reference": "7ae5513327cb536431847bcc0c10edba2701064e",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.3",
+            "sebastian/recursion-context": "~1.0"
+        },
+        "require-dev": {
+            "phpunit/phpunit": "~4.4"
+        },
+        "time": "2015-06-21 07:55:53",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.2.x-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "classmap": [
+                "src/"
+            ]
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "BSD-3-Clause"
+        ],
+        "authors": [
+            {
+                "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": "Provides the functionality to export PHP variables for visualization",
+        "homepage": "http://www.github.com/sebastianbergmann/exporter",
+        "keywords": [
+            "export",
+            "exporter"
+        ]
+    },
+    {
+        "name": "sebastian/environment",
+        "version": "1.3.2",
+        "version_normalized": "1.3.2.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/sebastianbergmann/environment.git",
+            "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6324c907ce7a52478eeeaede764f48733ef5ae44",
+            "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.3"
+        },
+        "require-dev": {
+            "phpunit/phpunit": "~4.4"
         },
-        "time": "2015-09-20 21:13:58",
+        "time": "2015-08-03 06:14:51",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.3.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\DomCrawler\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Symfony DomCrawler Component",
-        "homepage": "https://symfony.com"
+        "description": "Provides functionality to handle HHVM/PHP environments",
+        "homepage": "http://www.github.com/sebastianbergmann/environment",
+        "keywords": [
+            "Xdebug",
+            "environment",
+            "hhvm"
+        ]
     },
     {
-        "name": "symfony/css-selector",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "sebastian/diff",
+        "version": "1.3.0",
+        "version_normalized": "1.3.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/css-selector.git",
-            "reference": "abe19cc0429a06be0c133056d1f9859854860970"
+            "url": "https://github.com/sebastianbergmann/diff.git",
+            "reference": "863df9687835c62aa423a22412d26fa2ebde3fd3"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/css-selector/zipball/abe19cc0429a06be0c133056d1f9859854860970",
-            "reference": "abe19cc0429a06be0c133056d1f9859854860970",
+            "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/863df9687835c62aa423a22412d26fa2ebde3fd3",
+            "reference": "863df9687835c62aa423a22412d26fa2ebde3fd3",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "php": ">=5.3.3"
         },
         "require-dev": {
-            "symfony/phpunit-bridge": "~2.7"
+            "phpunit/phpunit": "~4.2"
         },
-        "time": "2015-09-22 13:49:29",
+        "time": "2015-02-22 15:13:53",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.3-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\CssSelector\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Jean-François Simon",
-                "email": "jeanfrancois.simon@sensiolabs.com"
-            },
-            {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Kore Nordmann",
+                "email": "mail@kore-nordmann.de"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Symfony CssSelector Component",
-        "homepage": "https://symfony.com"
+        "description": "Diff implementation",
+        "homepage": "http://www.github.com/sebastianbergmann/diff",
+        "keywords": [
+            "diff"
+        ]
     },
     {
-        "name": "symfony/browser-kit",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "sebastian/comparator",
+        "version": "1.2.0",
+        "version_normalized": "1.2.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/browser-kit.git",
-            "reference": "277a2457776d4cc25706fbdd9d1e4ab2dac884e4"
+            "url": "https://github.com/sebastianbergmann/comparator.git",
+            "reference": "937efb279bd37a375bcadf584dec0726f84dbf22"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/browser-kit/zipball/277a2457776d4cc25706fbdd9d1e4ab2dac884e4",
-            "reference": "277a2457776d4cc25706fbdd9d1e4ab2dac884e4",
+            "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/937efb279bd37a375bcadf584dec0726f84dbf22",
+            "reference": "937efb279bd37a375bcadf584dec0726f84dbf22",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9",
-            "symfony/dom-crawler": "~2.0,>=2.0.5"
+            "php": ">=5.3.3",
+            "sebastian/diff": "~1.2",
+            "sebastian/exporter": "~1.2"
         },
         "require-dev": {
-            "symfony/css-selector": "~2.0,>=2.0.5",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/process": "~2.0,>=2.0.5"
-        },
-        "suggest": {
-            "symfony/process": ""
+            "phpunit/phpunit": "~4.4"
         },
-        "time": "2015-09-06 08:36:38",
+        "time": "2015-07-26 15:48:44",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.2.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Symfony\\Component\\BrowserKit\\": ""
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Jeff Welch",
+                "email": "whatthejeff@gmail.com"
             },
             {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
+                "name": "Volker Dusch",
+                "email": "github@wallbash.com"
+            },
+            {
+                "name": "Bernhard Schussek",
+                "email": "bschussek@2bepublished.at"
+            },
+            {
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de"
             }
         ],
-        "description": "Symfony BrowserKit Component",
-        "homepage": "https://symfony.com"
+        "description": "Provides the functionality to compare PHP values for equality",
+        "homepage": "http://www.github.com/sebastianbergmann/comparator",
+        "keywords": [
+            "comparator",
+            "compare",
+            "equality"
+        ]
     },
     {
-        "name": "guzzlehttp/guzzle",
-        "version": "6.1.0",
-        "version_normalized": "6.1.0.0",
+        "name": "phpunit/php-text-template",
+        "version": "1.2.1",
+        "version_normalized": "1.2.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/guzzle/guzzle.git",
-            "reference": "66fd14b4d0b8f2389eaf37c5458608c7cb793a81"
+            "url": "https://github.com/sebastianbergmann/php-text-template.git",
+            "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/guzzle/guzzle/zipball/66fd14b4d0b8f2389eaf37c5458608c7cb793a81",
-            "reference": "66fd14b4d0b8f2389eaf37c5458608c7cb793a81",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
+            "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
             "shasum": ""
         },
         "require": {
-            "guzzlehttp/promises": "~1.0",
-            "guzzlehttp/psr7": "~1.1",
-            "php": ">=5.5.0"
-        },
-        "require-dev": {
-            "ext-curl": "*",
-            "phpunit/phpunit": "~4.0",
-            "psr/log": "~1.0"
+            "php": ">=5.3.3"
         },
-        "time": "2015-09-08 17:36:26",
+        "time": "2015-06-21 13:50:34",
         "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "6.1-dev"
-            }
-        },
         "installation-source": "dist",
         "autoload": {
-            "files": [
-                "src/functions_include.php"
-            ],
-            "psr-4": {
-                "GuzzleHttp\\": "src/"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Michael Dowling",
-                "email": "mtdowling@gmail.com",
-                "homepage": "https://github.com/mtdowling"
+                "name": "Sebastian Bergmann",
+                "email": "sebastian@phpunit.de",
+                "role": "lead"
             }
         ],
-        "description": "Guzzle is a PHP HTTP client library",
-        "homepage": "http://guzzlephp.org/",
+        "description": "Simple template engine.",
+        "homepage": "https://github.com/sebastianbergmann/php-text-template/",
         "keywords": [
-            "client",
-            "curl",
-            "framework",
-            "http",
-            "http client",
-            "rest",
-            "web service"
+            "template"
         ]
     },
     {
-        "name": "fabpot/goutte",
-        "version": "v3.1.1",
-        "version_normalized": "3.1.1.0",
+        "name": "doctrine/instantiator",
+        "version": "1.0.5",
+        "version_normalized": "1.0.5.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/FriendsOfPHP/Goutte.git",
-            "reference": "751a3dc5c4d86ec3e97c9f27133ef9694d9243cc"
+            "url": "https://github.com/doctrine/instantiator.git",
+            "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/FriendsOfPHP/Goutte/zipball/751a3dc5c4d86ec3e97c9f27133ef9694d9243cc",
-            "reference": "751a3dc5c4d86ec3e97c9f27133ef9694d9243cc",
+            "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
+            "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
             "shasum": ""
         },
         "require": {
-            "guzzlehttp/guzzle": "^6.0",
-            "php": ">=5.5.0",
-            "symfony/browser-kit": "~2.1",
-            "symfony/css-selector": "~2.1",
-            "symfony/dom-crawler": "~2.1"
+            "php": ">=5.3,<8.0-DEV"
         },
-        "time": "2015-08-29 16:16:56",
-        "type": "application",
+        "require-dev": {
+            "athletic/athletic": "~0.1.8",
+            "ext-pdo": "*",
+            "ext-phar": "*",
+            "phpunit/phpunit": "~4.0",
+            "squizlabs/php_codesniffer": "~2.0"
+        },
+        "time": "2015-06-14 21:17:01",
+        "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "3.1-dev"
+                "dev-master": "1.0.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Goutte\\": "Goutte"
+                "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -2478,224 +2429,212 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
+                "name": "Marco Pivetta",
+                "email": "ocramius@gmail.com",
+                "homepage": "http://ocramius.github.com/"
             }
         ],
-        "description": "A simple PHP Web Scraper",
-        "homepage": "https://github.com/FriendsOfPHP/Goutte",
+        "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
+        "homepage": "https://github.com/doctrine/instantiator",
         "keywords": [
-            "scraper"
+            "constructor",
+            "instantiate"
         ]
     },
     {
-        "name": "behat/mink",
-        "version": "v1.7.0",
-        "version_normalized": "1.7.0.0",
+        "name": "phpunit/phpunit-mock-objects",
+        "version": "2.3.8",
+        "version_normalized": "2.3.8.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/minkphp/Mink.git",
-            "reference": "6c129030ec2cc029905cf969a56ca8f087b2dfdf"
+            "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
+            "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/minkphp/Mink/zipball/6c129030ec2cc029905cf969a56ca8f087b2dfdf",
-            "reference": "6c129030ec2cc029905cf969a56ca8f087b2dfdf",
+            "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983",
+            "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.1",
-            "symfony/css-selector": "~2.1"
+            "doctrine/instantiator": "^1.0.2",
+            "php": ">=5.3.3",
+            "phpunit/php-text-template": "~1.2",
+            "sebastian/exporter": "~1.2"
         },
         "require-dev": {
-            "symfony/phpunit-bridge": "~2.7"
+            "phpunit/phpunit": "~4.4"
         },
         "suggest": {
-            "behat/mink-browserkit-driver": "extremely fast headless driver for Symfony\\Kernel-based apps (Sf2, Silex)",
-            "behat/mink-goutte-driver": "fast headless driver for any app without JS emulation",
-            "behat/mink-selenium2-driver": "slow, but JS-enabled driver for any app (requires Selenium2)",
-            "behat/mink-zombie-driver": "fast and JS-enabled headless driver for any app (requires node.js)"
+            "ext-soap": "*"
         },
-        "time": "2015-09-20 20:24:03",
+        "time": "2015-10-02 06:51:40",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.7.x-dev"
+                "dev-master": "2.3.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Behat\\Mink\\": "src/"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Konstantin Kudryashov",
-                "email": "ever.zet@gmail.com",
-                "homepage": "http://everzet.com"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Browser controller/emulator abstraction for PHP",
-        "homepage": "http://mink.behat.org/",
+        "description": "Mock Object library for PHPUnit",
+        "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
         "keywords": [
-            "browser",
-            "testing",
-            "web"
+            "mock",
+            "xunit"
         ]
     },
     {
-        "name": "behat/mink-browserkit-driver",
-        "version": "v1.3.0",
-        "version_normalized": "1.3.0.0",
+        "name": "phpunit/php-timer",
+        "version": "1.0.7",
+        "version_normalized": "1.0.7.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/minkphp/MinkBrowserKitDriver.git",
-            "reference": "da47df1593dac132f04d24e7277ef40d33d9f201"
+            "url": "https://github.com/sebastianbergmann/php-timer.git",
+            "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/minkphp/MinkBrowserKitDriver/zipball/da47df1593dac132f04d24e7277ef40d33d9f201",
-            "reference": "da47df1593dac132f04d24e7277ef40d33d9f201",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
+            "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
             "shasum": ""
         },
         "require": {
-            "behat/mink": "~1.7@dev",
-            "php": ">=5.3.6",
-            "symfony/browser-kit": "~2.3",
-            "symfony/dom-crawler": "~2.3"
-        },
-        "require-dev": {
-            "silex/silex": "~1.2",
-            "symfony/phpunit-bridge": "~2.7"
-        },
-        "time": "2015-09-21 20:56:13",
-        "type": "mink-driver",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.3.x-dev"
-            }
+            "php": ">=5.3.3"
         },
+        "time": "2015-06-21 08:01:12",
+        "type": "library",
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Behat\\Mink\\Driver\\": "src/"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Konstantin Kudryashov",
-                "email": "ever.zet@gmail.com",
-                "homepage": "http://everzet.com"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Symfony2 BrowserKit driver for Mink framework",
-        "homepage": "http://mink.behat.org/",
+        "description": "Utility class for timing",
+        "homepage": "https://github.com/sebastianbergmann/php-timer/",
         "keywords": [
-            "Mink",
-            "Symfony2",
-            "browser",
-            "testing"
+            "timer"
         ]
     },
     {
-        "name": "behat/mink-goutte-driver",
-        "version": "v1.2.0",
-        "version_normalized": "1.2.0.0",
+        "name": "phpunit/php-file-iterator",
+        "version": "1.4.1",
+        "version_normalized": "1.4.1.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/minkphp/MinkGoutteDriver.git",
-            "reference": "c8e254f127d6f2242b994afd4339fb62d471df3f"
+            "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
+            "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/minkphp/MinkGoutteDriver/zipball/c8e254f127d6f2242b994afd4339fb62d471df3f",
-            "reference": "c8e254f127d6f2242b994afd4339fb62d471df3f",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
+            "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
             "shasum": ""
         },
         "require": {
-            "behat/mink": "~1.6@dev",
-            "behat/mink-browserkit-driver": "~1.2@dev",
-            "fabpot/goutte": "~1.0.4|~2.0|~3.1",
-            "php": ">=5.3.1"
-        },
-        "require-dev": {
-            "symfony/phpunit-bridge": "~2.7"
+            "php": ">=5.3.3"
         },
-        "time": "2015-09-21 21:31:11",
-        "type": "mink-driver",
+        "time": "2015-06-21 13:08:43",
+        "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.2.x-dev"
+                "dev-master": "1.4.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-4": {
-                "Behat\\Mink\\Driver\\": "src/"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "MIT"
+            "BSD-3-Clause"
         ],
         "authors": [
             {
-                "name": "Konstantin Kudryashov",
-                "email": "ever.zet@gmail.com",
-                "homepage": "http://everzet.com"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Goutte driver for Mink framework",
-        "homepage": "http://mink.behat.org/",
+        "description": "FilterIterator implementation that filters files based on a list of suffixes.",
+        "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
         "keywords": [
-            "browser",
-            "goutte",
-            "headless",
-            "testing"
+            "filesystem",
+            "iterator"
         ]
     },
     {
-        "name": "mikey179/vfsStream",
-        "version": "v1.6.0",
-        "version_normalized": "1.6.0.0",
+        "name": "phpunit/php-code-coverage",
+        "version": "2.2.4",
+        "version_normalized": "2.2.4.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/mikey179/vfsStream.git",
-            "reference": "73bcb605b741a7d5044b47592338c633788b0eb7"
+            "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
+            "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/mikey179/vfsStream/zipball/73bcb605b741a7d5044b47592338c633788b0eb7",
-            "reference": "73bcb605b741a7d5044b47592338c633788b0eb7",
+            "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/eabf68b476ac7d0f73793aada060f1c1a9bf8979",
+            "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.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.3.2",
+            "sebastian/version": "~1.0"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.5"
+            "ext-xdebug": ">=2.1.4",
+            "phpunit/phpunit": "~4"
         },
-        "time": "2015-10-06 16:59:57",
+        "suggest": {
+            "ext-dom": "*",
+            "ext-xdebug": ">=2.2.1",
+            "ext-xmlwriter": "*"
+        },
+        "time": "2015-10-06 15:47:00",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.6.x-dev"
+                "dev-master": "2.2.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "org\\bovigo\\vfs\\": "src/main/php"
-            }
+            "classmap": [
+                "src/"
+            ]
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
@@ -2703,52 +2642,53 @@
         ],
         "authors": [
             {
-                "name": "Frank Kleine",
-                "homepage": "http://frankkleine.de/",
-                "role": "Developer"
+                "name": "Sebastian Bergmann",
+                "email": "sb@sebastian-bergmann.de",
+                "role": "lead"
             }
         ],
-        "description": "Virtual file system to mock the real file system in unit tests.",
-        "homepage": "http://vfs.bovigo.org/"
+        "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": "phpdocumentor/reflection-docblock",
-        "version": "2.0.4",
-        "version_normalized": "2.0.4.0",
+        "name": "phpspec/prophecy",
+        "version": "v1.5.0",
+        "version_normalized": "1.5.0.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
-            "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8"
+            "url": "https://github.com/phpspec/prophecy.git",
+            "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/d68dbdc53dc358a816f00b300704702b2eaff7b8",
-            "reference": "d68dbdc53dc358a816f00b300704702b2eaff7b8",
+            "url": "https://api.github.com/repos/phpspec/prophecy/zipball/4745ded9307786b730d7a60df5cb5a6c43cf95f7",
+            "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "doctrine/instantiator": "^1.0.2",
+            "phpdocumentor/reflection-docblock": "~2.0",
+            "sebastian/comparator": "~1.1"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.0"
-        },
-        "suggest": {
-            "dflydev/markdown": "~1.0",
-            "erusev/parsedown": "~1.0"
+            "phpspec/phpspec": "~2.0"
         },
-        "time": "2015-02-03 12:10:50",
+        "time": "2015-08-13 10:07:40",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.0.x-dev"
+                "dev-master": "1.4.x-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-0": {
-                "phpDocumentor": [
-                    "src/"
-                ]
+                "Prophecy\\": "src/"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -2757,38 +2697,73 @@
         ],
         "authors": [
             {
-                "name": "Mike van Riel",
-                "email": "mike.vanriel@naenius.com"
+                "name": "Konstantin Kudryashov",
+                "email": "ever.zet@gmail.com",
+                "homepage": "http://everzet.com"
+            },
+            {
+                "name": "Marcello Duarte",
+                "email": "marcello.duarte@gmail.com"
             }
+        ],
+        "description": "Highly opinionated mocking framework for PHP 5.3+",
+        "homepage": "https://github.com/phpspec/prophecy",
+        "keywords": [
+            "Double",
+            "Dummy",
+            "fake",
+            "mock",
+            "spy",
+            "stub"
         ]
     },
     {
-        "name": "phpunit/php-token-stream",
-        "version": "1.4.8",
-        "version_normalized": "1.4.8.0",
+        "name": "phpunit/phpunit",
+        "version": "4.8.11",
+        "version_normalized": "4.8.11.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-token-stream.git",
-            "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da"
+            "url": "https://github.com/sebastianbergmann/phpunit.git",
+            "reference": "bdd199472410fd7e32751f9c814c7e06f2c21bd5"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da",
-            "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da",
+            "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/bdd199472410fd7e32751f9c814c7e06f2c21bd5",
+            "reference": "bdd199472410fd7e32751f9c814c7e06f2c21bd5",
             "shasum": ""
         },
         "require": {
-            "ext-tokenizer": "*",
-            "php": ">=5.3.3"
+            "ext-dom": "*",
+            "ext-json": "*",
+            "ext-pcre": "*",
+            "ext-reflection": "*",
+            "ext-spl": "*",
+            "php": ">=5.3.3",
+            "phpspec/prophecy": "^1.3.1",
+            "phpunit/php-code-coverage": "~2.1",
+            "phpunit/php-file-iterator": "~1.4",
+            "phpunit/php-text-template": "~1.2",
+            "phpunit/php-timer": ">=1.0.6",
+            "phpunit/phpunit-mock-objects": "~2.3",
+            "sebastian/comparator": "~1.1",
+            "sebastian/diff": "~1.2",
+            "sebastian/environment": "~1.3",
+            "sebastian/exporter": "~1.2",
+            "sebastian/global-state": "~1.0",
+            "sebastian/version": "~1.0",
+            "symfony/yaml": "~2.1|~3.0"
         },
-        "require-dev": {
-            "phpunit/phpunit": "~4.2"
+        "suggest": {
+            "phpunit/php-invoker": "~1.1"
         },
-        "time": "2015-09-15 10:49:45",
+        "time": "2015-10-07 10:39:46",
+        "bin": [
+            "phpunit"
+        ],
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.4-dev"
+                "dev-master": "4.8.x-dev"
             }
         },
         "installation-source": "dist",
@@ -2804,47 +2779,54 @@
         "authors": [
             {
                 "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "email": "sebastian@phpunit.de",
+                "role": "lead"
             }
         ],
-        "description": "Wrapper around PHP's tokenizer extension.",
-        "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
+        "description": "The PHP Unit Testing framework.",
+        "homepage": "https://phpunit.de/",
         "keywords": [
-            "tokenizer"
+            "phpunit",
+            "testing",
+            "xunit"
         ]
     },
     {
-        "name": "symfony/yaml",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "jcalderonzumba/gastonjs",
+        "version": "dev-master",
+        "version_normalized": "9999999-dev",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/yaml.git",
-            "reference": "31cb2ad0155c95b88ee55fe12bc7ff92232c1770"
+            "url": "https://github.com/jcalderonzumba/gastonjs.git",
+            "reference": "5e231b4df98275c404e1371fc5fadd34f6a121ad"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/yaml/zipball/31cb2ad0155c95b88ee55fe12bc7ff92232c1770",
-            "reference": "31cb2ad0155c95b88ee55fe12bc7ff92232c1770",
+            "url": "https://api.github.com/repos/jcalderonzumba/gastonjs/zipball/5e231b4df98275c404e1371fc5fadd34f6a121ad",
+            "reference": "5e231b4df98275c404e1371fc5fadd34f6a121ad",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.9"
+            "guzzlehttp/guzzle": "~5.0|~6.0",
+            "php": ">=5.4"
         },
         "require-dev": {
-            "symfony/phpunit-bridge": "~2.7"
+            "phpunit/phpunit": "~4.6",
+            "silex/silex": "~1.2",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/process": "~2.1"
         },
-        "time": "2015-09-14 14:14:09",
-        "type": "library",
+        "time": "2015-10-07 11:40:41",
+        "type": "phantomjs-api",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.7-dev"
+                "dev-master": "1.1.x-dev"
             }
         },
-        "installation-source": "dist",
+        "installation-source": "source",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\Yaml\\": ""
+                "Zumba\\GastonJS\\": "src"
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -2853,481 +2835,485 @@
         ],
         "authors": [
             {
-                "name": "Fabien Potencier",
-                "email": "fabien@symfony.com"
-            },
-            {
-                "name": "Symfony Community",
-                "homepage": "https://symfony.com/contributors"
-            }
-        ],
-        "description": "Symfony Yaml Component",
-        "homepage": "https://symfony.com"
-    },
-    {
-        "name": "sebastian/version",
-        "version": "1.0.6",
-        "version_normalized": "1.0.6.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/sebastianbergmann/version.git",
-            "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
-            "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
-            "shasum": ""
-        },
-        "time": "2015-06-21 13:59:46",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "classmap": [
-                "src/"
-            ]
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "BSD-3-Clause"
-        ],
-        "authors": [
-            {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de",
-                "role": "lead"
+                "name": "Juan Francisco Calderón Zumba",
+                "email": "juanfcz@gmail.com",
+                "homepage": "http://github.com/jcalderonzumba"
             }
         ],
-        "description": "Library that helps with managing the version number of Git-hosted PHP projects",
-        "homepage": "https://github.com/sebastianbergmann/version"
+        "description": "PhantomJS API based server for webpage automation",
+        "homepage": "https://github.com/jcalderonzumba/gastonjs",
+        "keywords": [
+            "api",
+            "automation",
+            "browser",
+            "headless",
+            "phantomjs"
+        ]
     },
     {
-        "name": "sebastian/global-state",
-        "version": "1.0.0",
-        "version_normalized": "1.0.0.0",
+        "name": "jcalderonzumba/mink-phantomjs-driver",
+        "version": "dev-master",
+        "version_normalized": "9999999-dev",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/global-state.git",
-            "reference": "c7428acdb62ece0a45e6306f1ae85e1c05b09c01"
+            "url": "https://github.com/jcalderonzumba/MinkPhantomJSDriver.git",
+            "reference": "10d7c48c9a4129463052321b52450d98983c4332"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/c7428acdb62ece0a45e6306f1ae85e1c05b09c01",
-            "reference": "c7428acdb62ece0a45e6306f1ae85e1c05b09c01",
+            "url": "https://api.github.com/repos/jcalderonzumba/MinkPhantomJSDriver/zipball/10d7c48c9a4129463052321b52450d98983c4332",
+            "reference": "10d7c48c9a4129463052321b52450d98983c4332",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "behat/mink": "~1.6",
+            "jcalderonzumba/gastonjs": "~1.0",
+            "php": ">=5.4",
+            "twig/twig": "~1.8"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.2"
-        },
-        "suggest": {
-            "ext-uopz": "*"
+            "phpunit/phpunit": "~4.6",
+            "silex/silex": "~1.2",
+            "symfony/css-selector": "~2.1",
+            "symfony/phpunit-bridge": "~2.7",
+            "symfony/process": "~2.3"
         },
-        "time": "2014-10-06 09:23:50",
-        "type": "library",
+        "time": "2015-10-05 18:24:44",
+        "type": "mink-driver",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0-dev"
+                "dev-master": "0.4.x-dev"
             }
         },
-        "installation-source": "dist",
+        "installation-source": "source",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Zumba\\Mink\\Driver\\": "src"
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Juan Francisco Calderón Zumba",
+                "email": "juanfcz@gmail.com",
+                "homepage": "http://github.com/jcalderonzumba"
             }
         ],
-        "description": "Snapshotting of global state",
-        "homepage": "http://www.github.com/sebastianbergmann/global-state",
+        "description": "PhantomJS driver for Mink framework",
+        "homepage": "http://mink.behat.org/",
         "keywords": [
-            "global state"
+            "ajax",
+            "browser",
+            "headless",
+            "javascript",
+            "phantomjs",
+            "testing"
         ]
     },
     {
-        "name": "sebastian/recursion-context",
-        "version": "1.0.1",
-        "version_normalized": "1.0.1.0",
+        "name": "symfony/class-loader",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/recursion-context.git",
-            "reference": "994d4a811bafe801fb06dccbee797863ba2792ba"
+            "url": "https://github.com/symfony/class-loader.git",
+            "reference": "320f8d2a9cdbcbeb24be602c124aae9d998474a4"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/994d4a811bafe801fb06dccbee797863ba2792ba",
-            "reference": "994d4a811bafe801fb06dccbee797863ba2792ba",
+            "url": "https://api.github.com/repos/symfony/class-loader/zipball/320f8d2a9cdbcbeb24be602c124aae9d998474a4",
+            "reference": "320f8d2a9cdbcbeb24be602c124aae9d998474a4",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "symfony/finder": "~2.0,>=2.0.5"
         },
-        "time": "2015-06-21 08:04:50",
+        "time": "2015-10-23 14:47:27",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\ClassLoader\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Jeff Welch",
-                "email": "whatthejeff@gmail.com"
-            },
-            {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Adam Harvey",
-                "email": "aharvey@php.net"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Provides functionality to recursively process PHP variables",
-        "homepage": "http://www.github.com/sebastianbergmann/recursion-context"
+        "description": "Symfony ClassLoader Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "sebastian/exporter",
-        "version": "1.2.1",
-        "version_normalized": "1.2.1.0",
+        "name": "symfony/console",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/exporter.git",
-            "reference": "7ae5513327cb536431847bcc0c10edba2701064e"
+            "url": "https://github.com/symfony/console.git",
+            "reference": "5efd632294c8320ea52492db22292ff853a43766"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e",
-            "reference": "7ae5513327cb536431847bcc0c10edba2701064e",
+            "url": "https://api.github.com/repos/symfony/console/zipball/5efd632294c8320ea52492db22292ff853a43766",
+            "reference": "5efd632294c8320ea52492db22292ff853a43766",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "sebastian/recursion-context": "~1.0"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "psr/log": "~1.0",
+            "symfony/event-dispatcher": "~2.1",
+            "symfony/process": "~2.1"
         },
-        "time": "2015-06-21 07:55:53",
+        "suggest": {
+            "psr/log": "For using the console logger",
+            "symfony/event-dispatcher": "",
+            "symfony/process": ""
+        },
+        "time": "2015-10-20 14:38:46",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.2.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Console\\": ""
+            }
         },
         "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": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Adam Harvey",
-                "email": "aharvey@php.net"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Provides the functionality to export PHP variables for visualization",
-        "homepage": "http://www.github.com/sebastianbergmann/exporter",
-        "keywords": [
-            "export",
-            "exporter"
-        ]
+        "description": "Symfony Console Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "sebastian/environment",
-        "version": "1.3.2",
-        "version_normalized": "1.3.2.0",
+        "name": "symfony/dependency-injection",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/environment.git",
-            "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44"
+            "url": "https://github.com/symfony/dependency-injection.git",
+            "reference": "af284e795ec8a08c80d1fc47518fd23004b89847"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6324c907ce7a52478eeeaede764f48733ef5ae44",
-            "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44",
+            "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/af284e795ec8a08c80d1fc47518fd23004b89847",
+            "reference": "af284e795ec8a08c80d1fc47518fd23004b89847",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.9"
+        },
+        "conflict": {
+            "symfony/expression-language": "<2.6"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "symfony/config": "~2.2",
+            "symfony/expression-language": "~2.6",
+            "symfony/yaml": "~2.1"
         },
-        "time": "2015-08-03 06:14:51",
+        "suggest": {
+            "symfony/config": "",
+            "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
+            "symfony/yaml": ""
+        },
+        "time": "2015-10-27 15:38:06",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.3.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\DependencyInjection\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Provides functionality to handle HHVM/PHP environments",
-        "homepage": "http://www.github.com/sebastianbergmann/environment",
-        "keywords": [
-            "Xdebug",
-            "environment",
-            "hhvm"
-        ]
+        "description": "Symfony DependencyInjection Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "sebastian/diff",
-        "version": "1.3.0",
-        "version_normalized": "1.3.0.0",
+        "name": "symfony/debug",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/diff.git",
-            "reference": "863df9687835c62aa423a22412d26fa2ebde3fd3"
+            "url": "https://github.com/symfony/debug.git",
+            "reference": "fb9e6887db716939f41af0ba8ef38a1582eb501b"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/863df9687835c62aa423a22412d26fa2ebde3fd3",
-            "reference": "863df9687835c62aa423a22412d26fa2ebde3fd3",
+            "url": "https://api.github.com/repos/symfony/debug/zipball/fb9e6887db716939f41af0ba8ef38a1582eb501b",
+            "reference": "fb9e6887db716939f41af0ba8ef38a1582eb501b",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.9",
+            "psr/log": "~1.0"
+        },
+        "conflict": {
+            "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.2"
+            "symfony/class-loader": "~2.2",
+            "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2"
         },
-        "time": "2015-02-22 15:13:53",
+        "time": "2015-10-11 09:39:48",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.3-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Debug\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Kore Nordmann",
-                "email": "mail@kore-nordmann.de"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Diff implementation",
-        "homepage": "http://www.github.com/sebastianbergmann/diff",
-        "keywords": [
-            "diff"
-        ]
+        "description": "Symfony Debug Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "sebastian/comparator",
-        "version": "1.2.0",
-        "version_normalized": "1.2.0.0",
+        "name": "symfony/http-foundation",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/comparator.git",
-            "reference": "937efb279bd37a375bcadf584dec0726f84dbf22"
+            "url": "https://github.com/symfony/http-foundation.git",
+            "reference": "7598eea151ae3d4134df1f9957364b17809eea75"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/937efb279bd37a375bcadf584dec0726f84dbf22",
-            "reference": "937efb279bd37a375bcadf584dec0726f84dbf22",
+            "url": "https://api.github.com/repos/symfony/http-foundation/zipball/7598eea151ae3d4134df1f9957364b17809eea75",
+            "reference": "7598eea151ae3d4134df1f9957364b17809eea75",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3",
-            "sebastian/diff": "~1.2",
-            "sebastian/exporter": "~1.2"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "symfony/expression-language": "~2.4"
         },
-        "time": "2015-07-26 15:48:44",
+        "time": "2015-10-23 14:47:27",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.2.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
+            "psr-4": {
+                "Symfony\\Component\\HttpFoundation\\": ""
+            },
             "classmap": [
-                "src/"
+                "Resources/stubs"
             ]
         },
         "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": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Provides the functionality to compare PHP values for equality",
-        "homepage": "http://www.github.com/sebastianbergmann/comparator",
-        "keywords": [
-            "comparator",
-            "compare",
-            "equality"
-        ]
+        "description": "Symfony HttpFoundation Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpunit/php-text-template",
-        "version": "1.2.1",
-        "version_normalized": "1.2.1.0",
+        "name": "symfony/event-dispatcher",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-text-template.git",
-            "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
+            "url": "https://github.com/symfony/event-dispatcher.git",
+            "reference": "87a5db5ea887763fa3a31a5471b512ff1596d9b8"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
-            "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
+            "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/87a5db5ea887763fa3a31a5471b512ff1596d9b8",
+            "reference": "87a5db5ea887763fa3a31a5471b512ff1596d9b8",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.9"
         },
-        "time": "2015-06-21 13:50:34",
+        "require-dev": {
+            "psr/log": "~1.0",
+            "symfony/config": "~2.0,>=2.0.5",
+            "symfony/dependency-injection": "~2.6",
+            "symfony/expression-language": "~2.6",
+            "symfony/stopwatch": "~2.3"
+        },
+        "suggest": {
+            "symfony/dependency-injection": "",
+            "symfony/http-kernel": ""
+        },
+        "time": "2015-10-11 09:39:48",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.7-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\EventDispatcher\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Simple template engine.",
-        "homepage": "https://github.com/sebastianbergmann/php-text-template/",
-        "keywords": [
-            "template"
-        ]
+        "description": "Symfony EventDispatcher Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "doctrine/instantiator",
-        "version": "1.0.5",
-        "version_normalized": "1.0.5.0",
+        "name": "symfony/http-kernel",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/doctrine/instantiator.git",
-            "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
+            "url": "https://github.com/symfony/http-kernel.git",
+            "reference": "4260f2273a446a6715063dc9ca89fd0c475c2f77"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
-            "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
+            "url": "https://api.github.com/repos/symfony/http-kernel/zipball/4260f2273a446a6715063dc9ca89fd0c475c2f77",
+            "reference": "4260f2273a446a6715063dc9ca89fd0c475c2f77",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3,<8.0-DEV"
+            "php": ">=5.3.9",
+            "psr/log": "~1.0",
+            "symfony/debug": "~2.6,>=2.6.2",
+            "symfony/event-dispatcher": "~2.6,>=2.6.7",
+            "symfony/http-foundation": "~2.5,>=2.5.4"
+        },
+        "conflict": {
+            "symfony/config": "<2.7"
+        },
+        "require-dev": {
+            "symfony/browser-kit": "~2.3",
+            "symfony/class-loader": "~2.1",
+            "symfony/config": "~2.7",
+            "symfony/console": "~2.3",
+            "symfony/css-selector": "~2.0,>=2.0.5",
+            "symfony/dependency-injection": "~2.2",
+            "symfony/dom-crawler": "~2.0,>=2.0.5",
+            "symfony/expression-language": "~2.4",
+            "symfony/finder": "~2.0,>=2.0.5",
+            "symfony/process": "~2.0,>=2.0.5",
+            "symfony/routing": "~2.2",
+            "symfony/stopwatch": "~2.3",
+            "symfony/templating": "~2.2",
+            "symfony/translation": "~2.0,>=2.0.5",
+            "symfony/var-dumper": "~2.6"
         },
-        "require-dev": {
-            "athletic/athletic": "~0.1.8",
-            "ext-pdo": "*",
-            "ext-phar": "*",
-            "phpunit/phpunit": "~4.0",
-            "squizlabs/php_codesniffer": "~2.0"
+        "suggest": {
+            "symfony/browser-kit": "",
+            "symfony/class-loader": "",
+            "symfony/config": "",
+            "symfony/console": "",
+            "symfony/dependency-injection": "",
+            "symfony/finder": "",
+            "symfony/var-dumper": ""
         },
-        "time": "2015-06-14 21:17:01",
+        "time": "2015-10-27 19:07:21",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.0.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
+                "Symfony\\Component\\HttpKernel\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -3336,266 +3322,314 @@
         ],
         "authors": [
             {
-                "name": "Marco Pivetta",
-                "email": "ocramius@gmail.com",
-                "homepage": "http://ocramius.github.com/"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
-        "homepage": "https://github.com/doctrine/instantiator",
-        "keywords": [
-            "constructor",
-            "instantiate"
-        ]
+        "description": "Symfony HttpKernel Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpunit/phpunit-mock-objects",
-        "version": "2.3.8",
-        "version_normalized": "2.3.8.0",
+        "name": "symfony/routing",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
-            "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983"
+            "url": "https://github.com/symfony/routing.git",
+            "reference": "f353e1f588679c3ec987624e6c617646bd01ba38"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/ac8e7a3db35738d56ee9a76e78a4e03d97628983",
-            "reference": "ac8e7a3db35738d56ee9a76e78a4e03d97628983",
+            "url": "https://api.github.com/repos/symfony/routing/zipball/f353e1f588679c3ec987624e6c617646bd01ba38",
+            "reference": "f353e1f588679c3ec987624e6c617646bd01ba38",
             "shasum": ""
         },
         "require": {
-            "doctrine/instantiator": "^1.0.2",
-            "php": ">=5.3.3",
-            "phpunit/php-text-template": "~1.2",
-            "sebastian/exporter": "~1.2"
+            "php": ">=5.3.9"
+        },
+        "conflict": {
+            "symfony/config": "<2.7"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.4"
+            "doctrine/annotations": "~1.0",
+            "doctrine/common": "~2.2",
+            "psr/log": "~1.0",
+            "symfony/config": "~2.7",
+            "symfony/expression-language": "~2.4",
+            "symfony/http-foundation": "~2.3",
+            "symfony/yaml": "~2.0,>=2.0.5"
         },
         "suggest": {
-            "ext-soap": "*"
+            "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": "2015-10-02 06:51:40",
+        "time": "2015-10-27 15:38:06",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.3.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Routing\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Mock Object library for PHPUnit",
-        "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/",
+        "description": "Symfony Routing Component",
+        "homepage": "https://symfony.com",
         "keywords": [
-            "mock",
-            "xunit"
+            "router",
+            "routing",
+            "uri",
+            "url"
         ]
     },
     {
-        "name": "phpunit/php-timer",
-        "version": "1.0.7",
-        "version_normalized": "1.0.7.0",
+        "name": "symfony/serializer",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-timer.git",
-            "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b"
+            "url": "https://github.com/symfony/serializer.git",
+            "reference": "14056684acad23b8815eb336bccc0b4ac76bd823"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
-            "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
+            "url": "https://api.github.com/repos/symfony/serializer/zipball/14056684acad23b8815eb336bccc0b4ac76bd823",
+            "reference": "14056684acad23b8815eb336bccc0b4ac76bd823",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.9"
         },
-        "time": "2015-06-21 08:01:12",
+        "require-dev": {
+            "doctrine/annotations": "~1.0",
+            "doctrine/cache": "~1.0",
+            "symfony/config": "~2.2",
+            "symfony/property-access": "~2.3",
+            "symfony/yaml": "~2.0,>=2.0.5"
+        },
+        "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.",
+            "symfony/config": "For using the XML mapping loader.",
+            "symfony/property-access": "For using the ObjectNormalizer.",
+            "symfony/yaml": "For using the default YAML mapping loader."
+        },
+        "time": "2015-10-11 09:39:48",
         "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.7-dev"
+            }
+        },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Serializer\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Utility class for timing",
-        "homepage": "https://github.com/sebastianbergmann/php-timer/",
-        "keywords": [
-            "timer"
-        ]
+        "description": "Symfony Serializer Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpunit/php-file-iterator",
-        "version": "1.4.1",
-        "version_normalized": "1.4.1.0",
+        "name": "symfony/translation",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
-            "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0"
+            "url": "https://github.com/symfony/translation.git",
+            "reference": "6ccd9289ec1c71d01a49d83480de3b5293ce30c8"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
-            "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
+            "url": "https://api.github.com/repos/symfony/translation/zipball/6ccd9289ec1c71d01a49d83480de3b5293ce30c8",
+            "reference": "6ccd9289ec1c71d01a49d83480de3b5293ce30c8",
             "shasum": ""
         },
         "require": {
-            "php": ">=5.3.3"
+            "php": ">=5.3.9"
         },
-        "time": "2015-06-21 13:08:43",
+        "conflict": {
+            "symfony/config": "<2.7"
+        },
+        "require-dev": {
+            "psr/log": "~1.0",
+            "symfony/config": "~2.7",
+            "symfony/intl": "~2.4",
+            "symfony/yaml": "~2.2"
+        },
+        "suggest": {
+            "psr/log": "To use logging capability in translator",
+            "symfony/config": "",
+            "symfony/yaml": ""
+        },
+        "time": "2015-10-27 15:38:06",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.4.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Translation\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "FilterIterator implementation that filters files based on a list of suffixes.",
-        "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
-        "keywords": [
-            "filesystem",
-            "iterator"
-        ]
+        "description": "Symfony Translation Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpunit/php-code-coverage",
-        "version": "2.2.4",
-        "version_normalized": "2.2.4.0",
+        "name": "symfony/validator",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
-            "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979"
+            "url": "https://github.com/symfony/validator.git",
+            "reference": "df9021e689aa3d08367881e7f8917219fabe5e64"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/eabf68b476ac7d0f73793aada060f1c1a9bf8979",
-            "reference": "eabf68b476ac7d0f73793aada060f1c1a9bf8979",
+            "url": "https://api.github.com/repos/symfony/validator/zipball/df9021e689aa3d08367881e7f8917219fabe5e64",
+            "reference": "df9021e689aa3d08367881e7f8917219fabe5e64",
             "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.3.2",
-            "sebastian/version": "~1.0"
+            "php": ">=5.3.9",
+            "symfony/translation": "~2.4"
         },
         "require-dev": {
-            "ext-xdebug": ">=2.1.4",
-            "phpunit/phpunit": "~4"
+            "doctrine/annotations": "~1.0",
+            "doctrine/cache": "~1.0",
+            "doctrine/common": "~2.3",
+            "egulias/email-validator": "~1.2,>=1.2.1",
+            "symfony/config": "~2.2",
+            "symfony/expression-language": "~2.4",
+            "symfony/http-foundation": "~2.1",
+            "symfony/intl": "~2.4",
+            "symfony/property-access": "~2.3",
+            "symfony/yaml": "~2.0,>=2.0.5"
         },
         "suggest": {
-            "ext-dom": "*",
-            "ext-xdebug": ">=2.2.1",
-            "ext-xmlwriter": "*"
+            "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": "2015-10-06 15:47:00",
+        "time": "2015-10-18 20:23:18",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "2.2.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Validator\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sb@sebastian-bergmann.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "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"
-        ]
+        "description": "Symfony Validator Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpspec/prophecy",
-        "version": "v1.5.0",
-        "version_normalized": "1.5.0.0",
+        "name": "symfony/process",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/phpspec/prophecy.git",
-            "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7"
+            "url": "https://github.com/symfony/process.git",
+            "reference": "4a959dd4e19c2c5d7512689413921e0a74386ec7"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/phpspec/prophecy/zipball/4745ded9307786b730d7a60df5cb5a6c43cf95f7",
-            "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7",
+            "url": "https://api.github.com/repos/symfony/process/zipball/4a959dd4e19c2c5d7512689413921e0a74386ec7",
+            "reference": "4a959dd4e19c2c5d7512689413921e0a74386ec7",
             "shasum": ""
         },
         "require": {
-            "doctrine/instantiator": "^1.0.2",
-            "phpdocumentor/reflection-docblock": "~2.0",
-            "sebastian/comparator": "~1.1"
-        },
-        "require-dev": {
-            "phpspec/phpspec": "~2.0"
+            "php": ">=5.3.9"
         },
-        "time": "2015-08-13 10:07:40",
+        "time": "2015-10-23 14:47:27",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.4.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "psr-0": {
-                "Prophecy\\": "src/"
+            "psr-4": {
+                "Symfony\\Component\\Process\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -3604,131 +3638,84 @@
         ],
         "authors": [
             {
-                "name": "Konstantin Kudryashov",
-                "email": "ever.zet@gmail.com",
-                "homepage": "http://everzet.com"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
             },
             {
-                "name": "Marcello Duarte",
-                "email": "marcello.duarte@gmail.com"
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Highly opinionated mocking framework for PHP 5.3+",
-        "homepage": "https://github.com/phpspec/prophecy",
-        "keywords": [
-            "Double",
-            "Dummy",
-            "fake",
-            "mock",
-            "spy",
-            "stub"
-        ]
+        "description": "Symfony Process Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "phpunit/phpunit",
-        "version": "4.8.11",
-        "version_normalized": "4.8.11.0",
+        "name": "symfony/yaml",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/sebastianbergmann/phpunit.git",
-            "reference": "bdd199472410fd7e32751f9c814c7e06f2c21bd5"
+            "url": "https://github.com/symfony/yaml.git",
+            "reference": "eca9019c88fbe250164affd107bc8057771f3f4d"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/bdd199472410fd7e32751f9c814c7e06f2c21bd5",
-            "reference": "bdd199472410fd7e32751f9c814c7e06f2c21bd5",
+            "url": "https://api.github.com/repos/symfony/yaml/zipball/eca9019c88fbe250164affd107bc8057771f3f4d",
+            "reference": "eca9019c88fbe250164affd107bc8057771f3f4d",
             "shasum": ""
         },
         "require": {
-            "ext-dom": "*",
-            "ext-json": "*",
-            "ext-pcre": "*",
-            "ext-reflection": "*",
-            "ext-spl": "*",
-            "php": ">=5.3.3",
-            "phpspec/prophecy": "^1.3.1",
-            "phpunit/php-code-coverage": "~2.1",
-            "phpunit/php-file-iterator": "~1.4",
-            "phpunit/php-text-template": "~1.2",
-            "phpunit/php-timer": ">=1.0.6",
-            "phpunit/phpunit-mock-objects": "~2.3",
-            "sebastian/comparator": "~1.1",
-            "sebastian/diff": "~1.2",
-            "sebastian/environment": "~1.3",
-            "sebastian/exporter": "~1.2",
-            "sebastian/global-state": "~1.0",
-            "sebastian/version": "~1.0",
-            "symfony/yaml": "~2.1|~3.0"
-        },
-        "suggest": {
-            "phpunit/php-invoker": "~1.1"
+            "php": ">=5.3.9"
         },
-        "time": "2015-10-07 10:39:46",
-        "bin": [
-            "phpunit"
-        ],
+        "time": "2015-10-11 09:39:48",
         "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "4.8.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
         "installation-source": "dist",
         "autoload": {
-            "classmap": [
-                "src/"
-            ]
+            "psr-4": {
+                "Symfony\\Component\\Yaml\\": ""
+            }
         },
         "notification-url": "https://packagist.org/downloads/",
         "license": [
-            "BSD-3-Clause"
+            "MIT"
         ],
         "authors": [
             {
-                "name": "Sebastian Bergmann",
-                "email": "sebastian@phpunit.de",
-                "role": "lead"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "The PHP Unit Testing framework.",
-        "homepage": "https://phpunit.de/",
-        "keywords": [
-            "phpunit",
-            "testing",
-            "xunit"
-        ]
+        "description": "Symfony Yaml Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "symfony/event-dispatcher",
-        "version": "v2.7.5",
-        "version_normalized": "2.7.5.0",
+        "name": "symfony/css-selector",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/symfony/event-dispatcher.git",
-            "reference": "ae4dcc2a8d3de98bd794167a3ccda1311597c5d9"
+            "url": "https://github.com/symfony/css-selector.git",
+            "reference": "e1b865b26be4a56d22a8dee398375044a80c865b"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/ae4dcc2a8d3de98bd794167a3ccda1311597c5d9",
-            "reference": "ae4dcc2a8d3de98bd794167a3ccda1311597c5d9",
+            "url": "https://api.github.com/repos/symfony/css-selector/zipball/e1b865b26be4a56d22a8dee398375044a80c865b",
+            "reference": "e1b865b26be4a56d22a8dee398375044a80c865b",
             "shasum": ""
         },
         "require": {
             "php": ">=5.3.9"
         },
-        "require-dev": {
-            "psr/log": "~1.0",
-            "symfony/config": "~2.0,>=2.0.5",
-            "symfony/dependency-injection": "~2.6",
-            "symfony/expression-language": "~2.6",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/stopwatch": "~2.3"
-        },
-        "suggest": {
-            "symfony/dependency-injection": "",
-            "symfony/http-kernel": ""
-        },
-        "time": "2015-09-22 13:49:29",
+        "time": "2015-10-11 09:39:48",
         "type": "library",
         "extra": {
             "branch-alias": {
@@ -3738,7 +3725,7 @@
         "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Symfony\\Component\\EventDispatcher\\": ""
+                "Symfony\\Component\\CssSelector\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -3747,6 +3734,10 @@
         ],
         "authors": [
             {
+                "name": "Jean-François Simon",
+                "email": "jeanfrancois.simon@sensiolabs.com"
+            },
+            {
                 "name": "Fabien Potencier",
                 "email": "fabien@symfony.com"
             },
@@ -3755,45 +3746,44 @@
                 "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "Symfony EventDispatcher Component",
+        "description": "Symfony CssSelector Component",
         "homepage": "https://symfony.com"
     },
     {
-        "name": "jcalderonzumba/gastonjs",
-        "version": "dev-master",
-        "version_normalized": "9999999-dev",
+        "name": "symfony/dom-crawler",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/jcalderonzumba/gastonjs.git",
-            "reference": "5e231b4df98275c404e1371fc5fadd34f6a121ad"
+            "url": "https://github.com/symfony/dom-crawler.git",
+            "reference": "5fef7d8b80d8f9992df99d8ee283f420484c9612"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/jcalderonzumba/gastonjs/zipball/5e231b4df98275c404e1371fc5fadd34f6a121ad",
-            "reference": "5e231b4df98275c404e1371fc5fadd34f6a121ad",
+            "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/5fef7d8b80d8f9992df99d8ee283f420484c9612",
+            "reference": "5fef7d8b80d8f9992df99d8ee283f420484c9612",
             "shasum": ""
         },
         "require": {
-            "guzzlehttp/guzzle": "~5.0|~6.0",
-            "php": ">=5.4"
+            "php": ">=5.3.9"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.6",
-            "silex/silex": "~1.2",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/process": "~2.1"
+            "symfony/css-selector": "~2.3"
         },
-        "time": "2015-10-07 11:40:41",
-        "type": "phantomjs-api",
+        "suggest": {
+            "symfony/css-selector": ""
+        },
+        "time": "2015-10-11 09:39:48",
+        "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "1.1.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
-        "installation-source": "source",
+        "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Zumba\\GastonJS\\": "src"
+                "Symfony\\Component\\DomCrawler\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -3802,60 +3792,54 @@
         ],
         "authors": [
             {
-                "name": "Juan Francisco Calderón Zumba",
-                "email": "juanfcz@gmail.com",
-                "homepage": "http://github.com/jcalderonzumba"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "PhantomJS API based server for webpage automation",
-        "homepage": "https://github.com/jcalderonzumba/gastonjs",
-        "keywords": [
-            "api",
-            "automation",
-            "browser",
-            "headless",
-            "phantomjs"
-        ]
+        "description": "Symfony DomCrawler Component",
+        "homepage": "https://symfony.com"
     },
     {
-        "name": "jcalderonzumba/mink-phantomjs-driver",
-        "version": "dev-master",
-        "version_normalized": "9999999-dev",
+        "name": "symfony/browser-kit",
+        "version": "v2.7.6",
+        "version_normalized": "2.7.6.0",
         "source": {
             "type": "git",
-            "url": "https://github.com/jcalderonzumba/MinkPhantomJSDriver.git",
-            "reference": "10d7c48c9a4129463052321b52450d98983c4332"
+            "url": "https://github.com/symfony/browser-kit.git",
+            "reference": "07d664a052572ccc28eb2ab7dbbe82155b1ad367"
         },
         "dist": {
             "type": "zip",
-            "url": "https://api.github.com/repos/jcalderonzumba/MinkPhantomJSDriver/zipball/10d7c48c9a4129463052321b52450d98983c4332",
-            "reference": "10d7c48c9a4129463052321b52450d98983c4332",
+            "url": "https://api.github.com/repos/symfony/browser-kit/zipball/07d664a052572ccc28eb2ab7dbbe82155b1ad367",
+            "reference": "07d664a052572ccc28eb2ab7dbbe82155b1ad367",
             "shasum": ""
         },
         "require": {
-            "behat/mink": "~1.6",
-            "jcalderonzumba/gastonjs": "~1.0",
-            "php": ">=5.4",
-            "twig/twig": "~1.8"
+            "php": ">=5.3.9",
+            "symfony/dom-crawler": "~2.0,>=2.0.5"
         },
         "require-dev": {
-            "phpunit/phpunit": "~4.6",
-            "silex/silex": "~1.2",
-            "symfony/css-selector": "~2.1",
-            "symfony/phpunit-bridge": "~2.7",
-            "symfony/process": "~2.3"
+            "symfony/css-selector": "~2.0,>=2.0.5",
+            "symfony/process": "~2.3.34|~2.7,>=2.7.6"
         },
-        "time": "2015-10-05 18:24:44",
-        "type": "mink-driver",
+        "suggest": {
+            "symfony/process": ""
+        },
+        "time": "2015-10-23 14:47:27",
+        "type": "library",
         "extra": {
             "branch-alias": {
-                "dev-master": "0.4.x-dev"
+                "dev-master": "2.7-dev"
             }
         },
-        "installation-source": "source",
+        "installation-source": "dist",
         "autoload": {
             "psr-4": {
-                "Zumba\\Mink\\Driver\\": "src"
+                "Symfony\\Component\\BrowserKit\\": ""
             }
         },
         "notification-url": "https://packagist.org/downloads/",
@@ -3864,20 +3848,15 @@
         ],
         "authors": [
             {
-                "name": "Juan Francisco Calderón Zumba",
-                "email": "juanfcz@gmail.com",
-                "homepage": "http://github.com/jcalderonzumba"
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
             }
         ],
-        "description": "PhantomJS driver for Mink framework",
-        "homepage": "http://mink.behat.org/",
-        "keywords": [
-            "ajax",
-            "browser",
-            "headless",
-            "javascript",
-            "phantomjs",
-            "testing"
-        ]
+        "description": "Symfony BrowserKit Component",
+        "homepage": "https://symfony.com"
     }
 ]
diff --git a/vendor/symfony/browser-kit/Client.php b/vendor/symfony/browser-kit/Client.php
index f41f156..a7eaed8 100644
--- a/vendor/symfony/browser-kit/Client.php
+++ b/vendor/symfony/browser-kit/Client.php
@@ -25,8 +25,6 @@
  * you need to also implement the getScript() method.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 abstract class Client
 {
@@ -52,8 +50,6 @@
      * @param array     $server    The server parameters (equivalent of $_SERVER)
      * @param History   $history   A History instance to store the browser history
      * @param CookieJar $cookieJar A CookieJar instance to store the cookies
-     *
-     * @api
      */
     public function __construct(array $server = array(), History $history = null, CookieJar $cookieJar = null)
     {
@@ -66,8 +62,6 @@ public function __construct(array $server = array(), History $history = null, Co
      * Sets whether to automatically follow redirects or not.
      *
      * @param bool $followRedirect Whether to follow redirects
-     *
-     * @api
      */
     public function followRedirects($followRedirect = true)
     {
@@ -91,8 +85,6 @@ public function setMaxRedirects($maxRedirects)
      * @param bool $insulated Whether to insulate the requests or not
      *
      * @throws \RuntimeException When Symfony Process Component is not installed
-     *
-     * @api
      */
     public function insulate($insulated = true)
     {
@@ -107,8 +99,6 @@ public function insulate($insulated = true)
      * Sets server parameters.
      *
      * @param array $server An array of server parameters
-     *
-     * @api
      */
     public function setServerParameters(array $server)
     {
@@ -146,8 +136,6 @@ public function getServerParameter($key, $default = '')
      * Returns the History instance.
      *
      * @return History A History instance
-     *
-     * @api
      */
     public function getHistory()
     {
@@ -158,8 +146,6 @@ public function getHistory()
      * Returns the CookieJar instance.
      *
      * @return CookieJar A CookieJar instance
-     *
-     * @api
      */
     public function getCookieJar()
     {
@@ -170,8 +156,6 @@ public function getCookieJar()
      * Returns the current Crawler instance.
      *
      * @return Crawler|null A Crawler instance
-     *
-     * @api
      */
     public function getCrawler()
     {
@@ -182,8 +166,6 @@ public function getCrawler()
      * Returns the current BrowserKit Response instance.
      *
      * @return Response|null A BrowserKit Response instance
-     *
-     * @api
      */
     public function getInternalResponse()
     {
@@ -199,8 +181,6 @@ public function getInternalResponse()
      * @return object|null A response instance
      *
      * @see doRequest()
-     *
-     * @api
      */
     public function getResponse()
     {
@@ -211,8 +191,6 @@ public function getResponse()
      * Returns the current BrowserKit Request instance.
      *
      * @return Request|null A BrowserKit Request instance
-     *
-     * @api
      */
     public function getInternalRequest()
     {
@@ -228,8 +206,6 @@ public function getInternalRequest()
      * @return object|null A Request instance
      *
      * @see doRequest()
-     *
-     * @api
      */
     public function getRequest()
     {
@@ -242,8 +218,6 @@ public function getRequest()
      * @param Link $link A Link instance
      *
      * @return Crawler
-     *
-     * @api
      */
     public function click(Link $link)
     {
@@ -261,8 +235,6 @@ public function click(Link $link)
      * @param array $values An array of form field values
      *
      * @return Crawler
-     *
-     * @api
      */
     public function submit(Form $form, array $values = array())
     {
@@ -283,8 +255,6 @@ public function submit(Form $form, array $values = array())
      * @param bool   $changeHistory Whether to update the history or not (only used internally for back(), forward(), and reload())
      *
      * @return Crawler
-     *
-     * @api
      */
     public function request($method, $uri, array $parameters = array(), array $files = array(), array $server = array(), $content = null, $changeHistory = true)
     {
@@ -357,8 +327,7 @@ public function request($method, $uri, array $parameters = array(), array $files
      */
     protected function doRequestInProcess($request)
     {
-        // We set the TMPDIR (for Macs) and TEMP (for Windows), because on these platforms the temp directory changes based on the user.
-        $process = new PhpProcess($this->getScript($request), null, array('TMPDIR' => sys_get_temp_dir(), 'TEMP' => sys_get_temp_dir()));
+        $process = new PhpProcess($this->getScript($request), null, null);
         $process->run();
 
         if (!$process->isSuccessful() || !preg_match('/^O\:\d+\:/', $process->getOutput())) {
@@ -440,8 +409,6 @@ protected function createCrawlerFromContent($uri, $content, $type)
      * Goes back in the browser history.
      *
      * @return Crawler
-     *
-     * @api
      */
     public function back()
     {
@@ -452,8 +419,6 @@ public function back()
      * Goes forward in the browser history.
      *
      * @return Crawler
-     *
-     * @api
      */
     public function forward()
     {
@@ -464,8 +429,6 @@ public function forward()
      * Reloads the current browser.
      *
      * @return Crawler
-     *
-     * @api
      */
     public function reload()
     {
@@ -478,8 +441,6 @@ public function reload()
      * @return Crawler
      *
      * @throws \LogicException If request was not a redirect
-     *
-     * @api
      */
     public function followRedirect()
     {
@@ -528,8 +489,6 @@ public function followRedirect()
      * Restarts the client.
      *
      * It flushes history and all cookies.
-     *
-     * @api
      */
     public function restart()
     {
diff --git a/vendor/symfony/browser-kit/Cookie.php b/vendor/symfony/browser-kit/Cookie.php
index e690cda..604d12d 100644
--- a/vendor/symfony/browser-kit/Cookie.php
+++ b/vendor/symfony/browser-kit/Cookie.php
@@ -15,8 +15,6 @@
  * Cookie represents an HTTP cookie.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Cookie
 {
@@ -56,8 +54,6 @@ class Cookie
      * @param bool   $secure       Indicates that the cookie should only be transmitted over a secure HTTPS connection from the client
      * @param bool   $httponly     The cookie httponly flag
      * @param bool   $encodedValue Whether the value is encoded or not
-     *
-     * @api
      */
     public function __construct($name, $value, $expires = null, $path = null, $domain = '', $secure = false, $httponly = true, $encodedValue = false)
     {
@@ -90,8 +86,6 @@ public function __construct($name, $value, $expires = null, $path = null, $domai
      * @return string The HTTP representation of the Cookie
      *
      * @throws \UnexpectedValueException
-     *
-     * @api
      */
     public function __toString()
     {
@@ -130,8 +124,6 @@ public function __toString()
      * @return Cookie A Cookie instance
      *
      * @throws \InvalidArgumentException
-     *
-     * @api
      */
     public static function fromString($cookie, $url = null)
     {
@@ -229,8 +221,6 @@ private static function parseDate($dateValue)
      * Gets the name of the cookie.
      *
      * @return string The cookie name
-     *
-     * @api
      */
     public function getName()
     {
@@ -241,8 +231,6 @@ public function getName()
      * Gets the value of the cookie.
      *
      * @return string The cookie value
-     *
-     * @api
      */
     public function getValue()
     {
@@ -253,8 +241,6 @@ public function getValue()
      * Gets the raw value of the cookie.
      *
      * @return string The cookie value
-     *
-     * @api
      */
     public function getRawValue()
     {
@@ -265,8 +251,6 @@ public function getRawValue()
      * Gets the expires time of the cookie.
      *
      * @return string The cookie expires time
-     *
-     * @api
      */
     public function getExpiresTime()
     {
@@ -277,8 +261,6 @@ public function getExpiresTime()
      * Gets the path of the cookie.
      *
      * @return string The cookie path
-     *
-     * @api
      */
     public function getPath()
     {
@@ -289,8 +271,6 @@ public function getPath()
      * Gets the domain of the cookie.
      *
      * @return string The cookie domain
-     *
-     * @api
      */
     public function getDomain()
     {
@@ -301,8 +281,6 @@ public function getDomain()
      * Returns the secure flag of the cookie.
      *
      * @return bool The cookie secure flag
-     *
-     * @api
      */
     public function isSecure()
     {
@@ -313,8 +291,6 @@ public function isSecure()
      * Returns the httponly flag of the cookie.
      *
      * @return bool The cookie httponly flag
-     *
-     * @api
      */
     public function isHttpOnly()
     {
@@ -325,8 +301,6 @@ public function isHttpOnly()
      * Returns true if the cookie has expired.
      *
      * @return bool true if the cookie has expired, false otherwise
-     *
-     * @api
      */
     public function isExpired()
     {
diff --git a/vendor/symfony/browser-kit/CookieJar.php b/vendor/symfony/browser-kit/CookieJar.php
index 1a36818..4b9661b 100644
--- a/vendor/symfony/browser-kit/CookieJar.php
+++ b/vendor/symfony/browser-kit/CookieJar.php
@@ -15,8 +15,6 @@
  * CookieJar.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class CookieJar
 {
@@ -26,8 +24,6 @@ class CookieJar
      * Sets a cookie.
      *
      * @param Cookie $cookie A Cookie instance
-     *
-     * @api
      */
     public function set(Cookie $cookie)
     {
@@ -47,8 +43,6 @@ public function set(Cookie $cookie)
      * @param string $domain The cookie domain
      *
      * @return Cookie|null A Cookie instance or null if the cookie does not exist
-     *
-     * @api
      */
     public function get($name, $path = '/', $domain = null)
     {
@@ -94,8 +88,6 @@ public function get($name, $path = '/', $domain = null)
      * @param string $name   The cookie name
      * @param string $path   The cookie path
      * @param string $domain The cookie domain
-     *
-     * @api
      */
     public function expire($name, $path = '/', $domain = null)
     {
@@ -126,8 +118,6 @@ public function expire($name, $path = '/', $domain = null)
 
     /**
      * Removes all the cookies from the jar.
-     *
-     * @api
      */
     public function clear()
     {
diff --git a/vendor/symfony/browser-kit/README.md b/vendor/symfony/browser-kit/README.md
index d638329..5600fe2 100644
--- a/vendor/symfony/browser-kit/README.md
+++ b/vendor/symfony/browser-kit/README.md
@@ -3,7 +3,7 @@ BrowserKit Component
 
 BrowserKit simulates the behavior of a web browser.
 
-The component only provide an abstract client and does not provide any
+The component only provides an abstract client and does not provide any
 "default" backend for the HTTP layer.
 
 Resources
diff --git a/vendor/symfony/browser-kit/Request.php b/vendor/symfony/browser-kit/Request.php
index 6d381d2..c79b341 100644
--- a/vendor/symfony/browser-kit/Request.php
+++ b/vendor/symfony/browser-kit/Request.php
@@ -15,8 +15,6 @@
  * Request object.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Request
 {
@@ -38,8 +36,6 @@ class Request
      * @param array  $cookies    An array of cookies
      * @param array  $server     An array of server parameters
      * @param string $content    The raw body data
-     *
-     * @api
      */
     public function __construct($uri, $method, array $parameters = array(), array $files = array(), array $cookies = array(), array $server = array(), $content = null)
     {
@@ -56,8 +52,6 @@ public function __construct($uri, $method, array $parameters = array(), array $f
      * Gets the request URI.
      *
      * @return string The request URI
-     *
-     * @api
      */
     public function getUri()
     {
@@ -68,8 +62,6 @@ public function getUri()
      * Gets the request HTTP method.
      *
      * @return string The request HTTP method
-     *
-     * @api
      */
     public function getMethod()
     {
@@ -80,8 +72,6 @@ public function getMethod()
      * Gets the request parameters.
      *
      * @return array The request parameters
-     *
-     * @api
      */
     public function getParameters()
     {
@@ -92,8 +82,6 @@ public function getParameters()
      * Gets the request server files.
      *
      * @return array The request files
-     *
-     * @api
      */
     public function getFiles()
     {
@@ -104,8 +92,6 @@ public function getFiles()
      * Gets the request cookies.
      *
      * @return array The request cookies
-     *
-     * @api
      */
     public function getCookies()
     {
@@ -116,8 +102,6 @@ public function getCookies()
      * Gets the request server parameters.
      *
      * @return array The request server parameters
-     *
-     * @api
      */
     public function getServer()
     {
@@ -128,8 +112,6 @@ public function getServer()
      * Gets the request raw body data.
      *
      * @return string The request raw body data.
-     *
-     * @api
      */
     public function getContent()
     {
diff --git a/vendor/symfony/browser-kit/Response.php b/vendor/symfony/browser-kit/Response.php
index 7a7130b..984442f 100644
--- a/vendor/symfony/browser-kit/Response.php
+++ b/vendor/symfony/browser-kit/Response.php
@@ -15,8 +15,6 @@
  * Response object.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Response
 {
@@ -33,8 +31,6 @@ class Response
      * @param string $content The content of the response
      * @param int    $status  The response status code
      * @param array  $headers An array of headers
-     *
-     * @api
      */
     public function __construct($content = '', $status = 200, array $headers = array())
     {
@@ -81,8 +77,6 @@ protected function buildHeader($name, $value)
      * Gets the response content.
      *
      * @return string The response content
-     *
-     * @api
      */
     public function getContent()
     {
@@ -93,8 +87,6 @@ public function getContent()
      * Gets the response status code.
      *
      * @return int The response status code
-     *
-     * @api
      */
     public function getStatus()
     {
@@ -105,8 +97,6 @@ public function getStatus()
      * Gets the response headers.
      *
      * @return array The response headers
-     *
-     * @api
      */
     public function getHeaders()
     {
diff --git a/vendor/symfony/browser-kit/composer.json b/vendor/symfony/browser-kit/composer.json
index 0cb629c..2313c73 100644
--- a/vendor/symfony/browser-kit/composer.json
+++ b/vendor/symfony/browser-kit/composer.json
@@ -20,8 +20,7 @@
         "symfony/dom-crawler": "~2.0,>=2.0.5"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
-        "symfony/process": "~2.0,>=2.0.5",
+        "symfony/process": "~2.3.34|~2.7,>=2.7.6",
         "symfony/css-selector": "~2.0,>=2.0.5"
     },
     "suggest": {
diff --git a/vendor/symfony/class-loader/ApcClassLoader.php b/vendor/symfony/class-loader/ApcClassLoader.php
index 48de72f..9170929 100644
--- a/vendor/symfony/class-loader/ApcClassLoader.php
+++ b/vendor/symfony/class-loader/ApcClassLoader.php
@@ -44,8 +44,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Kris Wallsmith <kris@symfony.com>
- *
- * @api
  */
 class ApcClassLoader
 {
@@ -66,8 +64,6 @@ class ApcClassLoader
      *
      * @throws \RuntimeException
      * @throws \InvalidArgumentException
-     *
-     * @api
      */
     public function __construct($prefix, $decorated)
     {
diff --git a/vendor/symfony/class-loader/ApcUniversalClassLoader.php b/vendor/symfony/class-loader/ApcUniversalClassLoader.php
index 898018a..ce73559 100644
--- a/vendor/symfony/class-loader/ApcUniversalClassLoader.php
+++ b/vendor/symfony/class-loader/ApcUniversalClassLoader.php
@@ -60,8 +60,6 @@
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Kris Wallsmith <kris@symfony.com>
  *
- * @api
- *
  * @deprecated since version 2.4, to be removed in 3.0.
  *             Use the {@link ClassLoader} class instead.
  */
@@ -75,8 +73,6 @@ class ApcUniversalClassLoader extends UniversalClassLoader
      * @param string $prefix A prefix to create a namespace in APC
      *
      * @throws \RuntimeException
-     *
-     * @api
      */
     public function __construct($prefix)
     {
diff --git a/vendor/symfony/class-loader/ClassCollectionLoader.php b/vendor/symfony/class-loader/ClassCollectionLoader.php
index 6bf4ebd..c7dc3ae 100644
--- a/vendor/symfony/class-loader/ClassCollectionLoader.php
+++ b/vendor/symfony/class-loader/ClassCollectionLoader.php
@@ -283,7 +283,7 @@ private static function getClassHierarchy(\ReflectionClass $class)
 
         $traits = array();
 
-        if (function_exists('get_declared_traits')) {
+        if (method_exists('ReflectionClass', 'getTraits')) {
             foreach ($classes as $c) {
                 foreach (self::resolveDependencies(self::computeTraitDeps($c), $c) as $trait) {
                     if ($trait !== $c) {
diff --git a/vendor/symfony/class-loader/ClassLoader.php b/vendor/symfony/class-loader/ClassLoader.php
index 6fcbb06..fc0a569 100644
--- a/vendor/symfony/class-loader/ClassLoader.php
+++ b/vendor/symfony/class-loader/ClassLoader.php
@@ -91,12 +91,16 @@ public function addPrefix($prefix, $paths)
             return;
         }
         if (isset($this->prefixes[$prefix])) {
-            $this->prefixes[$prefix] = array_merge(
-                $this->prefixes[$prefix],
-                (array) $paths
-            );
+            if (is_array($paths)) {
+                $this->prefixes[$prefix] = array_unique(array_merge(
+                    $this->prefixes[$prefix],
+                    $paths
+                ));
+            } elseif (!in_array($paths, $this->prefixes[$prefix])) {
+                 $this->prefixes[$prefix][] = $paths;
+            }
         } else {
-            $this->prefixes[$prefix] = (array) $paths;
+            $this->prefixes[$prefix] = array_unique((array) $paths);
         }
     }
 
diff --git a/vendor/symfony/class-loader/DebugClassLoader.php b/vendor/symfony/class-loader/DebugClassLoader.php
index b3eb89a..92cbcb0 100644
--- a/vendor/symfony/class-loader/DebugClassLoader.php
+++ b/vendor/symfony/class-loader/DebugClassLoader.php
@@ -23,8 +23,6 @@
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Christophe Coevoet <stof@notk.org>
  *
- * @api
- *
  * @deprecated since version 2.4, to be removed in 3.0.
  *             Use {@link \Symfony\Component\Debug\DebugClassLoader} instead.
  */
@@ -36,8 +34,6 @@ class DebugClassLoader
      * Constructor.
      *
      * @param object $classFinder
-     *
-     * @api
      */
     public function __construct($classFinder)
     {
diff --git a/vendor/symfony/class-loader/UniversalClassLoader.php b/vendor/symfony/class-loader/UniversalClassLoader.php
index 5293a4c..961c751 100644
--- a/vendor/symfony/class-loader/UniversalClassLoader.php
+++ b/vendor/symfony/class-loader/UniversalClassLoader.php
@@ -58,8 +58,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  *
- * @api
- *
  * @deprecated since version 2.4, to be removed in 3.0.
  *             Use the {@link ClassLoader} class instead.
  */
@@ -137,8 +135,6 @@ public function getPrefixFallbacks()
      * Registers the directory to use as a fallback for namespaces.
      *
      * @param array $dirs An array of directories
-     *
-     * @api
      */
     public function registerNamespaceFallbacks(array $dirs)
     {
@@ -159,8 +155,6 @@ public function registerNamespaceFallback($dir)
      * Registers directories to use as a fallback for class prefixes.
      *
      * @param array $dirs An array of directories
-     *
-     * @api
      */
     public function registerPrefixFallbacks(array $dirs)
     {
@@ -181,8 +175,6 @@ public function registerPrefixFallback($dir)
      * Registers an array of namespaces.
      *
      * @param array $namespaces An array of namespaces (namespaces as keys and locations as values)
-     *
-     * @api
      */
     public function registerNamespaces(array $namespaces)
     {
@@ -196,8 +188,6 @@ public function registerNamespaces(array $namespaces)
      *
      * @param string       $namespace The namespace
      * @param array|string $paths     The location(s) of the namespace
-     *
-     * @api
      */
     public function registerNamespace($namespace, $paths)
     {
@@ -208,8 +198,6 @@ public function registerNamespace($namespace, $paths)
      * Registers an array of classes using the PEAR naming convention.
      *
      * @param array $classes An array of classes (prefixes as keys and locations as values)
-     *
-     * @api
      */
     public function registerPrefixes(array $classes)
     {
@@ -223,8 +211,6 @@ public function registerPrefixes(array $classes)
      *
      * @param string       $prefix The classes prefix
      * @param array|string $paths  The location(s) of the classes
-     *
-     * @api
      */
     public function registerPrefix($prefix, $paths)
     {
@@ -235,8 +221,6 @@ public function registerPrefix($prefix, $paths)
      * Registers this instance as an autoloader.
      *
      * @param bool $prepend Whether to prepend the autoloader or not
-     *
-     * @api
      */
     public function register($prepend = false)
     {
diff --git a/vendor/symfony/class-loader/XcacheClassLoader.php b/vendor/symfony/class-loader/XcacheClassLoader.php
index 19c1303..bf51227 100644
--- a/vendor/symfony/class-loader/XcacheClassLoader.php
+++ b/vendor/symfony/class-loader/XcacheClassLoader.php
@@ -45,8 +45,6 @@
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Kris Wallsmith <kris@symfony.com>
  * @author Kim Hemsø Rasmussen <kimhemsoe@gmail.com>
- *
- * @api
  */
 class XcacheClassLoader
 {
@@ -67,8 +65,6 @@ class XcacheClassLoader
      *
      * @throws \RuntimeException
      * @throws \InvalidArgumentException
-     *
-     * @api
      */
     public function __construct($prefix, $decorated)
     {
diff --git a/vendor/symfony/class-loader/composer.json b/vendor/symfony/class-loader/composer.json
index 6d011b5..828e598 100644
--- a/vendor/symfony/class-loader/composer.json
+++ b/vendor/symfony/class-loader/composer.json
@@ -20,7 +20,6 @@
         "php": ">=5.3.9"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
         "symfony/finder": "~2.0,>=2.0.5"
     },
     "autoload": {
diff --git a/vendor/symfony/console/Application.php b/vendor/symfony/console/Application.php
index ae32282..e386337 100644
--- a/vendor/symfony/console/Application.php
+++ b/vendor/symfony/console/Application.php
@@ -54,8 +54,6 @@
  *     $app->run();
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Application
 {
@@ -77,8 +75,6 @@ class Application
      *
      * @param string $name    The name of the application
      * @param string $version The version of the application
-     *
-     * @api
      */
     public function __construct($name = 'UNKNOWN', $version = 'UNKNOWN')
     {
@@ -107,8 +103,6 @@ public function setDispatcher(EventDispatcherInterface $dispatcher)
      * @return int 0 if everything went fine, or an error code
      *
      * @throws \Exception When doRun returns Exception
-     *
-     * @api
      */
     public function run(InputInterface $input = null, OutputInterface $output = null)
     {
@@ -202,8 +196,6 @@ public function doRun(InputInterface $input, OutputInterface $output)
      * Set a helper set to be used with the command.
      *
      * @param HelperSet $helperSet The helper set
-     *
-     * @api
      */
     public function setHelperSet(HelperSet $helperSet)
     {
@@ -214,8 +206,6 @@ public function setHelperSet(HelperSet $helperSet)
      * Get the helper set associated with the command.
      *
      * @return HelperSet The HelperSet instance associated with this command
-     *
-     * @api
      */
     public function getHelperSet()
     {
@@ -226,8 +216,6 @@ public function getHelperSet()
      * Set an input definition set to be used with this application.
      *
      * @param InputDefinition $definition The input definition
-     *
-     * @api
      */
     public function setDefinition(InputDefinition $definition)
     {
@@ -258,8 +246,6 @@ public function getHelp()
      * Sets whether to catch exceptions or not during commands execution.
      *
      * @param bool $boolean Whether to catch exceptions or not during commands execution
-     *
-     * @api
      */
     public function setCatchExceptions($boolean)
     {
@@ -270,8 +256,6 @@ public function setCatchExceptions($boolean)
      * Sets whether to automatically exit after a command execution or not.
      *
      * @param bool $boolean Whether to automatically exit after a command execution or not
-     *
-     * @api
      */
     public function setAutoExit($boolean)
     {
@@ -282,8 +266,6 @@ public function setAutoExit($boolean)
      * Gets the name of the application.
      *
      * @return string The application name
-     *
-     * @api
      */
     public function getName()
     {
@@ -294,8 +276,6 @@ public function getName()
      * Sets the application name.
      *
      * @param string $name The application name
-     *
-     * @api
      */
     public function setName($name)
     {
@@ -306,8 +286,6 @@ public function setName($name)
      * Gets the application version.
      *
      * @return string The application version
-     *
-     * @api
      */
     public function getVersion()
     {
@@ -318,8 +296,6 @@ public function getVersion()
      * Sets the application version.
      *
      * @param string $version The application version
-     *
-     * @api
      */
     public function setVersion($version)
     {
@@ -330,8 +306,6 @@ public function setVersion($version)
      * Returns the long version of the application.
      *
      * @return string The long application version
-     *
-     * @api
      */
     public function getLongVersion()
     {
@@ -348,8 +322,6 @@ public function getLongVersion()
      * @param string $name The command name
      *
      * @return Command The newly created command
-     *
-     * @api
      */
     public function register($name)
     {
@@ -360,8 +332,6 @@ public function register($name)
      * Adds an array of command objects.
      *
      * @param Command[] $commands An array of commands
-     *
-     * @api
      */
     public function addCommands(array $commands)
     {
@@ -378,8 +348,6 @@ public function addCommands(array $commands)
      * @param Command $command A Command object
      *
      * @return Command The registered command
-     *
-     * @api
      */
     public function add(Command $command)
     {
@@ -412,8 +380,6 @@ public function add(Command $command)
      * @return Command A Command object
      *
      * @throws \InvalidArgumentException When command name given does not exist
-     *
-     * @api
      */
     public function get($name)
     {
@@ -441,8 +407,6 @@ public function get($name)
      * @param string $name The command name or alias
      *
      * @return bool true if the command exists, false otherwise
-     *
-     * @api
      */
     public function has($name)
     {
@@ -520,8 +484,6 @@ public function findNamespace($namespace)
      * @return Command A Command instance
      *
      * @throws \InvalidArgumentException When command name is incorrect or ambiguous
-     *
-     * @api
      */
     public function find($name)
     {
@@ -577,8 +539,6 @@ public function find($name)
      * @param string $namespace A namespace name
      *
      * @return Command[] An array of Command instances
-     *
-     * @api
      */
     public function all($namespace = null)
     {
diff --git a/vendor/symfony/console/Command/Command.php b/vendor/symfony/console/Command/Command.php
index 519778c..51a8a39 100644
--- a/vendor/symfony/console/Command/Command.php
+++ b/vendor/symfony/console/Command/Command.php
@@ -26,8 +26,6 @@
  * Base class for all commands.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Command
 {
@@ -52,8 +50,6 @@ class Command
      * @param string|null $name The name of the command; passing null means it must be set in configure()
      *
      * @throws \LogicException When the command name is empty
-     *
-     * @api
      */
     public function __construct($name = null)
     {
@@ -84,8 +80,6 @@ public function ignoreValidationErrors()
      * Sets the application instance for this command.
      *
      * @param Application $application An Application instance
-     *
-     * @api
      */
     public function setApplication(Application $application = null)
     {
@@ -121,8 +115,6 @@ public function getHelperSet()
      * Gets the application instance for this command.
      *
      * @return Application An Application instance
-     *
-     * @api
      */
     public function getApplication()
     {
@@ -214,8 +206,6 @@ protected function initialize(InputInterface $input, OutputInterface $output)
      *
      * @see setCode()
      * @see execute()
-     *
-     * @api
      */
     public function run(InputInterface $input, OutputInterface $output)
     {
@@ -251,6 +241,13 @@ public function run(InputInterface $input, OutputInterface $output)
             $this->interact($input, $output);
         }
 
+        // The command name argument is often omitted when a command is executed directly with its run() method.
+        // It would fail the validation if we didn't make sure the command argument is present,
+        // since it's required by the application.
+        if ($input->hasArgument('command') && null === $input->getArgument('command')) {
+            $input->setArgument('command', $this->getName());
+        }
+
         $input->validate();
 
         if ($this->code) {
@@ -275,8 +272,6 @@ public function run(InputInterface $input, OutputInterface $output)
      * @throws \InvalidArgumentException
      *
      * @see execute()
-     *
-     * @api
      */
     public function setCode($code)
     {
@@ -322,8 +317,6 @@ public function mergeApplicationDefinition($mergeArgs = true)
      * @param array|InputDefinition $definition An array of argument and option instances or a definition instance
      *
      * @return Command The current instance
-     *
-     * @api
      */
     public function setDefinition($definition)
     {
@@ -342,8 +335,6 @@ public function setDefinition($definition)
      * Gets the InputDefinition attached to this Command.
      *
      * @return InputDefinition An InputDefinition instance
-     *
-     * @api
      */
     public function getDefinition()
     {
@@ -374,8 +365,6 @@ public function getNativeDefinition()
      * @param mixed  $default     The default value (for InputArgument::OPTIONAL mode only)
      *
      * @return Command The current instance
-     *
-     * @api
      */
     public function addArgument($name, $mode = null, $description = '', $default = null)
     {
@@ -394,8 +383,6 @@ public function addArgument($name, $mode = null, $description = '', $default = n
      * @param mixed  $default     The default value (must be null for InputOption::VALUE_REQUIRED or InputOption::VALUE_NONE)
      *
      * @return Command The current instance
-     *
-     * @api
      */
     public function addOption($name, $shortcut = null, $mode = null, $description = '', $default = null)
     {
@@ -417,8 +404,6 @@ public function addOption($name, $shortcut = null, $mode = null, $description =
      * @return Command The current instance
      *
      * @throws \InvalidArgumentException When the name is invalid
-     *
-     * @api
      */
     public function setName($name)
     {
@@ -452,8 +437,6 @@ public function setProcessTitle($title)
      * Returns the command name.
      *
      * @return string The command name
-     *
-     * @api
      */
     public function getName()
     {
@@ -466,8 +449,6 @@ public function getName()
      * @param string $description The description for the command
      *
      * @return Command The current instance
-     *
-     * @api
      */
     public function setDescription($description)
     {
@@ -480,8 +461,6 @@ public function setDescription($description)
      * Returns the description for the command.
      *
      * @return string The description for the command
-     *
-     * @api
      */
     public function getDescription()
     {
@@ -494,8 +473,6 @@ public function getDescription()
      * @param string $help The help for the command
      *
      * @return Command The current instance
-     *
-     * @api
      */
     public function setHelp($help)
     {
@@ -508,12 +485,10 @@ public function setHelp($help)
      * Returns the help for the command.
      *
      * @return string The help for the command
-     *
-     * @api
      */
     public function getHelp()
     {
-        return $this->help ?: $this->description;
+        return $this->help;
     }
 
     /**
@@ -535,7 +510,7 @@ public function getProcessedHelp()
             $_SERVER['PHP_SELF'].' '.$name,
         );
 
-        return str_replace($placeholders, $replacements, $this->getHelp());
+        return str_replace($placeholders, $replacements, $this->getHelp() ?: $this->getDescription());
     }
 
     /**
@@ -546,8 +521,6 @@ public function getProcessedHelp()
      * @return Command The current instance
      *
      * @throws \InvalidArgumentException When an alias is invalid
-     *
-     * @api
      */
     public function setAliases($aliases)
     {
@@ -568,8 +541,6 @@ public function setAliases($aliases)
      * Returns the aliases for the command.
      *
      * @return array An array of aliases for the command
-     *
-     * @api
      */
     public function getAliases()
     {
@@ -628,8 +599,6 @@ public function getUsages()
      * @return mixed The helper value
      *
      * @throws \InvalidArgumentException if the helper is not defined
-     *
-     * @api
      */
     public function getHelper($name)
     {
diff --git a/vendor/symfony/console/Descriptor/ApplicationDescription.php b/vendor/symfony/console/Descriptor/ApplicationDescription.php
index c481be4..0e87193 100644
--- a/vendor/symfony/console/Descriptor/ApplicationDescription.php
+++ b/vendor/symfony/console/Descriptor/ApplicationDescription.php
@@ -136,15 +136,17 @@ private function inspectApplication()
     private function sortCommands(array $commands)
     {
         $namespacedCommands = array();
+        $globalCommands = array();
         foreach ($commands as $name => $command) {
             $key = $this->application->extractNamespace($name, 1);
             if (!$key) {
-                $key = '_global';
+                $globalCommands['_global'][$name] = $command;
+            } else {
+                $namespacedCommands[$key][$name] = $command;
             }
-
-            $namespacedCommands[$key][$name] = $command;
         }
         ksort($namespacedCommands);
+        $namespacedCommands = array_merge($globalCommands, $namespacedCommands);
 
         foreach ($namespacedCommands as &$commandsSet) {
             ksort($commandsSet);
diff --git a/vendor/symfony/console/Formatter/OutputFormatter.php b/vendor/symfony/console/Formatter/OutputFormatter.php
index 331b204..7a78eb2 100644
--- a/vendor/symfony/console/Formatter/OutputFormatter.php
+++ b/vendor/symfony/console/Formatter/OutputFormatter.php
@@ -15,8 +15,6 @@
  * Formatter class for console output.
  *
  * @author Konstantin Kudryashov <ever.zet@gmail.com>
- *
- * @api
  */
 class OutputFormatter implements OutputFormatterInterface
 {
@@ -41,8 +39,6 @@ public static function escape($text)
      *
      * @param bool                            $decorated Whether this formatter should actually decorate strings
      * @param OutputFormatterStyleInterface[] $styles    Array of "name => FormatterStyle" instances
-     *
-     * @api
      */
     public function __construct($decorated = false, array $styles = array())
     {
@@ -64,8 +60,6 @@ public function __construct($decorated = false, array $styles = array())
      * Sets the decorated flag.
      *
      * @param bool $decorated Whether to decorate the messages or not
-     *
-     * @api
      */
     public function setDecorated($decorated)
     {
@@ -76,8 +70,6 @@ public function setDecorated($decorated)
      * Gets the decorated flag.
      *
      * @return bool true if the output will decorate messages, false otherwise
-     *
-     * @api
      */
     public function isDecorated()
     {
@@ -89,8 +81,6 @@ public function isDecorated()
      *
      * @param string                        $name  The style name
      * @param OutputFormatterStyleInterface $style The style instance
-     *
-     * @api
      */
     public function setStyle($name, OutputFormatterStyleInterface $style)
     {
@@ -103,8 +93,6 @@ public function setStyle($name, OutputFormatterStyleInterface $style)
      * @param string $name
      *
      * @return bool
-     *
-     * @api
      */
     public function hasStyle($name)
     {
@@ -119,8 +107,6 @@ public function hasStyle($name)
      * @return OutputFormatterStyleInterface
      *
      * @throws \InvalidArgumentException When style isn't defined
-     *
-     * @api
      */
     public function getStyle($name)
     {
@@ -137,8 +123,6 @@ public function getStyle($name)
      * @param string $message The message to style
      *
      * @return string The styled message
-     *
-     * @api
      */
     public function format($message)
     {
diff --git a/vendor/symfony/console/Formatter/OutputFormatterInterface.php b/vendor/symfony/console/Formatter/OutputFormatterInterface.php
index 52efa31..5a52ba0 100644
--- a/vendor/symfony/console/Formatter/OutputFormatterInterface.php
+++ b/vendor/symfony/console/Formatter/OutputFormatterInterface.php
@@ -15,8 +15,6 @@
  * Formatter interface for console output.
  *
  * @author Konstantin Kudryashov <ever.zet@gmail.com>
- *
- * @api
  */
 interface OutputFormatterInterface
 {
@@ -24,8 +22,6 @@
      * Sets the decorated flag.
      *
      * @param bool $decorated Whether to decorate the messages or not
-     *
-     * @api
      */
     public function setDecorated($decorated);
 
@@ -33,8 +29,6 @@ public function setDecorated($decorated);
      * Gets the decorated flag.
      *
      * @return bool true if the output will decorate messages, false otherwise
-     *
-     * @api
      */
     public function isDecorated();
 
@@ -43,8 +37,6 @@ public function isDecorated();
      *
      * @param string                        $name  The style name
      * @param OutputFormatterStyleInterface $style The style instance
-     *
-     * @api
      */
     public function setStyle($name, OutputFormatterStyleInterface $style);
 
@@ -54,8 +46,6 @@ public function setStyle($name, OutputFormatterStyleInterface $style);
      * @param string $name
      *
      * @return bool
-     *
-     * @api
      */
     public function hasStyle($name);
 
@@ -65,8 +55,6 @@ public function hasStyle($name);
      * @param string $name
      *
      * @return OutputFormatterStyleInterface
-     *
-     * @api
      */
     public function getStyle($name);
 
@@ -76,8 +64,6 @@ public function getStyle($name);
      * @param string $message The message to style
      *
      * @return string The styled message
-     *
-     * @api
      */
     public function format($message);
 }
diff --git a/vendor/symfony/console/Formatter/OutputFormatterStyle.php b/vendor/symfony/console/Formatter/OutputFormatterStyle.php
index ee62cdb..4d3eda3 100644
--- a/vendor/symfony/console/Formatter/OutputFormatterStyle.php
+++ b/vendor/symfony/console/Formatter/OutputFormatterStyle.php
@@ -15,8 +15,6 @@
  * Formatter style class for defining styles.
  *
  * @author Konstantin Kudryashov <ever.zet@gmail.com>
- *
- * @api
  */
 class OutputFormatterStyle implements OutputFormatterStyleInterface
 {
@@ -60,8 +58,6 @@ class OutputFormatterStyle implements OutputFormatterStyleInterface
      * @param string|null $foreground The style foreground color name
      * @param string|null $background The style background color name
      * @param array       $options    The style options
-     *
-     * @api
      */
     public function __construct($foreground = null, $background = null, array $options = array())
     {
@@ -82,8 +78,6 @@ public function __construct($foreground = null, $background = null, array $optio
      * @param string|null $color The color name
      *
      * @throws \InvalidArgumentException When the color name isn't defined
-     *
-     * @api
      */
     public function setForeground($color = null)
     {
@@ -110,8 +104,6 @@ public function setForeground($color = null)
      * @param string|null $color The color name
      *
      * @throws \InvalidArgumentException When the color name isn't defined
-     *
-     * @api
      */
     public function setBackground($color = null)
     {
@@ -138,8 +130,6 @@ public function setBackground($color = null)
      * @param string $option The option name
      *
      * @throws \InvalidArgumentException When the option name isn't defined
-     *
-     * @api
      */
     public function setOption($option)
     {
diff --git a/vendor/symfony/console/Formatter/OutputFormatterStyleInterface.php b/vendor/symfony/console/Formatter/OutputFormatterStyleInterface.php
index e8642b3..c36fda8 100644
--- a/vendor/symfony/console/Formatter/OutputFormatterStyleInterface.php
+++ b/vendor/symfony/console/Formatter/OutputFormatterStyleInterface.php
@@ -15,8 +15,6 @@
  * Formatter style interface for defining styles.
  *
  * @author Konstantin Kudryashov <ever.zet@gmail.com>
- *
- * @api
  */
 interface OutputFormatterStyleInterface
 {
@@ -24,8 +22,6 @@
      * Sets style foreground color.
      *
      * @param string $color The color name
-     *
-     * @api
      */
     public function setForeground($color = null);
 
@@ -33,8 +29,6 @@ public function setForeground($color = null);
      * Sets style background color.
      *
      * @param string $color The color name
-     *
-     * @api
      */
     public function setBackground($color = null);
 
@@ -42,8 +36,6 @@ public function setBackground($color = null);
      * Sets some specific style option.
      *
      * @param string $option The option name
-     *
-     * @api
      */
     public function setOption($option);
 
diff --git a/vendor/symfony/console/Helper/HelperInterface.php b/vendor/symfony/console/Helper/HelperInterface.php
index 6d39449..5a923e0 100644
--- a/vendor/symfony/console/Helper/HelperInterface.php
+++ b/vendor/symfony/console/Helper/HelperInterface.php
@@ -15,8 +15,6 @@
  * HelperInterface is the interface all helpers must implement.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface HelperInterface
 {
@@ -24,8 +22,6 @@
      * Sets the helper set associated with this helper.
      *
      * @param HelperSet $helperSet A HelperSet instance
-     *
-     * @api
      */
     public function setHelperSet(HelperSet $helperSet = null);
 
@@ -33,8 +29,6 @@ public function setHelperSet(HelperSet $helperSet = null);
      * Gets the helper set associated with this helper.
      *
      * @return HelperSet A HelperSet instance
-     *
-     * @api
      */
     public function getHelperSet();
 
@@ -42,8 +36,6 @@ public function getHelperSet();
      * Returns the canonical name of this helper.
      *
      * @return string The canonical name
-     *
-     * @api
      */
     public function getName();
 }
diff --git a/vendor/symfony/console/Helper/ProgressBar.php b/vendor/symfony/console/Helper/ProgressBar.php
index 7f4b2ef..0b64b18 100644
--- a/vendor/symfony/console/Helper/ProgressBar.php
+++ b/vendor/symfony/console/Helper/ProgressBar.php
@@ -27,7 +27,8 @@ class ProgressBar
     private $barChar;
     private $emptyBarChar = '-';
     private $progressChar = '>';
-    private $format = null;
+    private $format;
+    private $internalFormat;
     private $redrawFreq = 1;
 
     /**
@@ -72,8 +73,6 @@ public function __construct(OutputInterface $output, $max = 0)
             }
         }
 
-        $this->setFormat($this->determineBestFormat());
-
         $this->startTime = time();
     }
 
@@ -310,16 +309,8 @@ public function getProgressCharacter()
      */
     public function setFormat($format)
     {
-        // try to use the _nomax variant if available
-        if (!$this->max && null !== self::getFormatDefinition($format.'_nomax')) {
-            $this->format = self::getFormatDefinition($format.'_nomax');
-        } elseif (null !== self::getFormatDefinition($format)) {
-            $this->format = self::getFormatDefinition($format);
-        } else {
-            $this->format = $format;
-        }
-
-        $this->formatLineCount = substr_count($this->format, "\n");
+        $this->format = null;
+        $this->internalFormat = $format;
     }
 
     /**
@@ -441,6 +432,10 @@ public function display()
             return;
         }
 
+        if (null === $this->format) {
+            $this->setRealFormat($this->internalFormat ?: $this->determineBestFormat());
+        }
+
         // these 3 variables can be removed in favor of using $this in the closure when support for PHP 5.3 will be dropped.
         $self = $this;
         $output = $this->output;
@@ -475,10 +470,33 @@ public function clear()
             return;
         }
 
+        if (null === $this->format) {
+            $this->setRealFormat($this->internalFormat ?: $this->determineBestFormat());
+        }
+
         $this->overwrite(str_repeat("\n", $this->formatLineCount));
     }
 
     /**
+     * Sets the progress bar format.
+     *
+     * @param string $format The format
+     */
+    private function setRealFormat($format)
+    {
+        // try to use the _nomax variant if available
+        if (!$this->max && null !== self::getFormatDefinition($format.'_nomax')) {
+            $this->format = self::getFormatDefinition($format.'_nomax');
+        } elseif (null !== self::getFormatDefinition($format)) {
+            $this->format = self::getFormatDefinition($format);
+        } else {
+            $this->format = $format;
+        }
+
+        $this->formatLineCount = substr_count($this->format, "\n");
+    }
+
+    /**
      * Sets the progress bar maximal steps.
      *
      * @param int $max The progress bar max steps
diff --git a/vendor/symfony/console/Input/ArgvInput.php b/vendor/symfony/console/Input/ArgvInput.php
index a6c2132..43b28d5 100644
--- a/vendor/symfony/console/Input/ArgvInput.php
+++ b/vendor/symfony/console/Input/ArgvInput.php
@@ -35,8 +35,6 @@
  *
  * @see http://www.gnu.org/software/libc/manual/html_node/Argument-Syntax.html
  * @see http://www.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap12.html#tag_12_02
- *
- * @api
  */
 class ArgvInput extends Input
 {
@@ -48,8 +46,6 @@ class ArgvInput extends Input
      *
      * @param array           $argv       An array of parameters from the CLI (in the argv format)
      * @param InputDefinition $definition A InputDefinition instance
-     *
-     * @api
      */
     public function __construct(array $argv = null, InputDefinition $definition = null)
     {
diff --git a/vendor/symfony/console/Input/ArrayInput.php b/vendor/symfony/console/Input/ArrayInput.php
index 5743bb8..99c9788 100644
--- a/vendor/symfony/console/Input/ArrayInput.php
+++ b/vendor/symfony/console/Input/ArrayInput.php
@@ -19,8 +19,6 @@
  *     $input = new ArrayInput(array('name' => 'foo', '--bar' => 'foobar'));
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class ArrayInput extends Input
 {
@@ -31,8 +29,6 @@ class ArrayInput extends Input
      *
      * @param array           $parameters An array of parameters
      * @param InputDefinition $definition A InputDefinition instance
-     *
-     * @api
      */
     public function __construct(array $parameters, InputDefinition $definition = null)
     {
diff --git a/vendor/symfony/console/Input/Input.php b/vendor/symfony/console/Input/Input.php
index 5e7c140..e26fcc1 100644
--- a/vendor/symfony/console/Input/Input.php
+++ b/vendor/symfony/console/Input/Input.php
@@ -73,8 +73,15 @@ public function bind(InputDefinition $definition)
      */
     public function validate()
     {
-        if (count($this->arguments) < $this->definition->getArgumentRequiredCount()) {
-            throw new \RuntimeException('Not enough arguments.');
+        $definition = $this->definition;
+        $givenArguments = $this->arguments;
+
+        $missingArguments = array_filter(array_keys($definition->getArguments()), function ($argument) use ($definition, $givenArguments) {
+            return !array_key_exists($argument, $givenArguments) && $definition->getArgument($argument)->isRequired();
+        });
+
+        if (count($missingArguments) > 0) {
+            throw new \RuntimeException(sprintf('Not enough arguments (missing: "%s").', implode(', ', $missingArguments)));
         }
     }
 
diff --git a/vendor/symfony/console/Input/InputArgument.php b/vendor/symfony/console/Input/InputArgument.php
index 1167da9..69edecb 100644
--- a/vendor/symfony/console/Input/InputArgument.php
+++ b/vendor/symfony/console/Input/InputArgument.php
@@ -15,8 +15,6 @@
  * Represents a command line argument.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class InputArgument
 {
@@ -38,8 +36,6 @@ class InputArgument
      * @param mixed  $default     The default value (for self::OPTIONAL mode only)
      *
      * @throws \InvalidArgumentException When argument mode is not valid
-     *
-     * @api
      */
     public function __construct($name, $mode = null, $description = '', $default = null)
     {
diff --git a/vendor/symfony/console/Input/InputDefinition.php b/vendor/symfony/console/Input/InputDefinition.php
index 21ac832..809baeb 100644
--- a/vendor/symfony/console/Input/InputDefinition.php
+++ b/vendor/symfony/console/Input/InputDefinition.php
@@ -26,8 +26,6 @@
  *     ));
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class InputDefinition
 {
@@ -42,8 +40,6 @@ class InputDefinition
      * Constructor.
      *
      * @param array $definition An array of InputArgument and InputOption instance
-     *
-     * @api
      */
     public function __construct(array $definition = array())
     {
@@ -54,8 +50,6 @@ public function __construct(array $definition = array())
      * Sets the definition of the input.
      *
      * @param array $definition The definition array
-     *
-     * @api
      */
     public function setDefinition(array $definition)
     {
@@ -77,8 +71,6 @@ public function setDefinition(array $definition)
      * Sets the InputArgument objects.
      *
      * @param InputArgument[] $arguments An array of InputArgument objects
-     *
-     * @api
      */
     public function setArguments($arguments = array())
     {
@@ -93,8 +85,6 @@ public function setArguments($arguments = array())
      * Adds an array of InputArgument objects.
      *
      * @param InputArgument[] $arguments An array of InputArgument objects
-     *
-     * @api
      */
     public function addArguments($arguments = array())
     {
@@ -111,8 +101,6 @@ public function addArguments($arguments = array())
      * @param InputArgument $argument An InputArgument object
      *
      * @throws \LogicException When incorrect argument is given
-     *
-     * @api
      */
     public function addArgument(InputArgument $argument)
     {
@@ -149,8 +137,6 @@ public function addArgument(InputArgument $argument)
      * @return InputArgument An InputArgument object
      *
      * @throws \InvalidArgumentException When argument given doesn't exist
-     *
-     * @api
      */
     public function getArgument($name)
     {
@@ -169,8 +155,6 @@ public function getArgument($name)
      * @param string|int $name The InputArgument name or position
      *
      * @return bool true if the InputArgument object exists, false otherwise
-     *
-     * @api
      */
     public function hasArgument($name)
     {
@@ -183,8 +167,6 @@ public function hasArgument($name)
      * Gets the array of InputArgument objects.
      *
      * @return InputArgument[] An array of InputArgument objects
-     *
-     * @api
      */
     public function getArguments()
     {
@@ -230,8 +212,6 @@ public function getArgumentDefaults()
      * Sets the InputOption objects.
      *
      * @param InputOption[] $options An array of InputOption objects
-     *
-     * @api
      */
     public function setOptions($options = array())
     {
@@ -244,8 +224,6 @@ public function setOptions($options = array())
      * Adds an array of InputOption objects.
      *
      * @param InputOption[] $options An array of InputOption objects
-     *
-     * @api
      */
     public function addOptions($options = array())
     {
@@ -260,8 +238,6 @@ public function addOptions($options = array())
      * @param InputOption $option An InputOption object
      *
      * @throws \LogicException When option given already exist
-     *
-     * @api
      */
     public function addOption(InputOption $option)
     {
@@ -293,8 +269,6 @@ public function addOption(InputOption $option)
      * @return InputOption A InputOption object
      *
      * @throws \InvalidArgumentException When option given doesn't exist
-     *
-     * @api
      */
     public function getOption($name)
     {
@@ -311,8 +285,6 @@ public function getOption($name)
      * @param string $name The InputOption name
      *
      * @return bool true if the InputOption object exists, false otherwise
-     *
-     * @api
      */
     public function hasOption($name)
     {
@@ -323,8 +295,6 @@ public function hasOption($name)
      * Gets the array of InputOption objects.
      *
      * @return InputOption[] An array of InputOption objects
-     *
-     * @api
      */
     public function getOptions()
     {
diff --git a/vendor/symfony/console/Input/InputOption.php b/vendor/symfony/console/Input/InputOption.php
index 3a48ca3..167f199 100644
--- a/vendor/symfony/console/Input/InputOption.php
+++ b/vendor/symfony/console/Input/InputOption.php
@@ -15,8 +15,6 @@
  * Represents a command line option.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class InputOption
 {
@@ -41,8 +39,6 @@ class InputOption
      * @param mixed        $default     The default value (must be null for self::VALUE_REQUIRED or self::VALUE_NONE)
      *
      * @throws \InvalidArgumentException If option mode is invalid or incompatible
-     *
-     * @api
      */
     public function __construct($name, $shortcut = null, $mode = null, $description = '', $default = null)
     {
diff --git a/vendor/symfony/console/Input/StringInput.php b/vendor/symfony/console/Input/StringInput.php
index 40d1dfb..c518d5c 100644
--- a/vendor/symfony/console/Input/StringInput.php
+++ b/vendor/symfony/console/Input/StringInput.php
@@ -19,8 +19,6 @@
  *     $input = new StringInput('foo --bar="foobar"');
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class StringInput extends ArgvInput
 {
@@ -34,8 +32,6 @@ class StringInput extends ArgvInput
      * @param InputDefinition $definition A InputDefinition instance
      *
      * @deprecated The second argument is deprecated as it does not work (will be removed in 3.0), use 'bind' method instead
-     *
-     * @api
      */
     public function __construct($input, InputDefinition $definition = null)
     {
diff --git a/vendor/symfony/console/Output/ConsoleOutput.php b/vendor/symfony/console/Output/ConsoleOutput.php
index 04bd51b..8e1f360 100644
--- a/vendor/symfony/console/Output/ConsoleOutput.php
+++ b/vendor/symfony/console/Output/ConsoleOutput.php
@@ -25,8 +25,6 @@
  *     $output = new StreamOutput(fopen('php://stdout', 'w'));
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class ConsoleOutput extends StreamOutput implements ConsoleOutputInterface
 {
@@ -41,8 +39,6 @@ class ConsoleOutput extends StreamOutput implements ConsoleOutputInterface
      * @param int                           $verbosity The verbosity level (one of the VERBOSITY constants in OutputInterface)
      * @param bool|null                     $decorated Whether to decorate messages (null for auto-guessing)
      * @param OutputFormatterInterface|null $formatter Output formatter instance (null to use default OutputFormatter)
-     *
-     * @api
      */
     public function __construct($verbosity = self::VERBOSITY_NORMAL, $decorated = null, OutputFormatterInterface $formatter = null)
     {
@@ -129,7 +125,13 @@ protected function hasStderrSupport()
      */
     private function isRunningOS400()
     {
-        return 'OS400' === php_uname('s');
+        $checks = array(
+            function_exists('php_uname') ? php_uname('s') : '',
+            getenv('OSTYPE'),
+            PHP_OS,
+        );
+
+        return false !== stristr(implode(';', $checks), 'OS400');
     }
 
     /**
diff --git a/vendor/symfony/console/Output/NullOutput.php b/vendor/symfony/console/Output/NullOutput.php
index 557f8af..a14ae74 100644
--- a/vendor/symfony/console/Output/NullOutput.php
+++ b/vendor/symfony/console/Output/NullOutput.php
@@ -21,8 +21,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Tobias Schultze <http://tobion.de>
- *
- * @api
  */
 class NullOutput implements OutputInterface
 {
diff --git a/vendor/symfony/console/Output/Output.php b/vendor/symfony/console/Output/Output.php
index cb0e40d..306dccf 100644
--- a/vendor/symfony/console/Output/Output.php
+++ b/vendor/symfony/console/Output/Output.php
@@ -26,8 +26,6 @@
  *  * quiet: -q (no output)
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 abstract class Output implements OutputInterface
 {
@@ -40,8 +38,6 @@
      * @param int                           $verbosity The verbosity level (one of the VERBOSITY constants in OutputInterface)
      * @param bool                          $decorated Whether to decorate messages
      * @param OutputFormatterInterface|null $formatter Output formatter instance (null to use default OutputFormatter)
-     *
-     * @api
      */
     public function __construct($verbosity = self::VERBOSITY_NORMAL, $decorated = false, OutputFormatterInterface $formatter = null)
     {
diff --git a/vendor/symfony/console/Output/OutputInterface.php b/vendor/symfony/console/Output/OutputInterface.php
index edffb9c..9a956e2 100644
--- a/vendor/symfony/console/Output/OutputInterface.php
+++ b/vendor/symfony/console/Output/OutputInterface.php
@@ -17,8 +17,6 @@
  * OutputInterface is the interface implemented by all Output classes.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface OutputInterface
 {
@@ -40,8 +38,6 @@
      * @param int          $type     The type of output (one of the OUTPUT constants)
      *
      * @throws \InvalidArgumentException When unknown output type is given
-     *
-     * @api
      */
     public function write($messages, $newline = false, $type = self::OUTPUT_NORMAL);
 
@@ -52,8 +48,6 @@ public function write($messages, $newline = false, $type = self::OUTPUT_NORMAL);
      * @param int          $type     The type of output (one of the OUTPUT constants)
      *
      * @throws \InvalidArgumentException When unknown output type is given
-     *
-     * @api
      */
     public function writeln($messages, $type = self::OUTPUT_NORMAL);
 
@@ -61,8 +55,6 @@ public function writeln($messages, $type = self::OUTPUT_NORMAL);
      * Sets the verbosity of the output.
      *
      * @param int $level The level of verbosity (one of the VERBOSITY constants)
-     *
-     * @api
      */
     public function setVerbosity($level);
 
@@ -70,8 +62,6 @@ public function setVerbosity($level);
      * Gets the current verbosity of the output.
      *
      * @return int The current level of verbosity (one of the VERBOSITY constants)
-     *
-     * @api
      */
     public function getVerbosity();
 
@@ -79,8 +69,6 @@ public function getVerbosity();
      * Sets the decorated flag.
      *
      * @param bool $decorated Whether to decorate the messages
-     *
-     * @api
      */
     public function setDecorated($decorated);
 
@@ -88,8 +76,6 @@ public function setDecorated($decorated);
      * Gets the decorated flag.
      *
      * @return bool true if the output will decorate messages, false otherwise
-     *
-     * @api
      */
     public function isDecorated();
 
@@ -97,8 +83,6 @@ public function isDecorated();
      * Sets output formatter.
      *
      * @param OutputFormatterInterface $formatter
-     *
-     * @api
      */
     public function setFormatter(OutputFormatterInterface $formatter);
 
@@ -106,8 +90,6 @@ public function setFormatter(OutputFormatterInterface $formatter);
      * Returns current output formatter instance.
      *
      * @return OutputFormatterInterface
-     *
-     * @api
      */
     public function getFormatter();
 }
diff --git a/vendor/symfony/console/Output/StreamOutput.php b/vendor/symfony/console/Output/StreamOutput.php
index ecf0bb8..a1facda 100644
--- a/vendor/symfony/console/Output/StreamOutput.php
+++ b/vendor/symfony/console/Output/StreamOutput.php
@@ -25,8 +25,6 @@
  * $output = new StreamOutput(fopen('/path/to/output.log', 'a', false));
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class StreamOutput extends Output
 {
@@ -41,8 +39,6 @@ class StreamOutput extends Output
      * @param OutputFormatterInterface|null $formatter Output formatter instance (null to use default OutputFormatter)
      *
      * @throws \InvalidArgumentException When first argument is not a real stream
-     *
-     * @api
      */
     public function __construct($stream, $verbosity = self::VERBOSITY_NORMAL, $decorated = null, OutputFormatterInterface $formatter = null)
     {
@@ -87,7 +83,7 @@ protected function doWrite($message, $newline)
      *
      * Colorization is disabled if not supported by the stream:
      *
-     *  -  Windows without Ansicon and ConEmu
+     *  -  Windows without Ansicon, ConEmu or Mintty
      *  -  non tty consoles
      *
      * @return bool true if the stream supports colorization, false otherwise
@@ -95,7 +91,7 @@ protected function doWrite($message, $newline)
     protected function hasColorSupport()
     {
         if (DIRECTORY_SEPARATOR === '\\') {
-            return false !== getenv('ANSICON') || 'ON' === getenv('ConEmuANSI');
+            return false !== getenv('ANSICON') || 'ON' === getenv('ConEmuANSI') || 'xterm' === getenv('TERM');
         }
 
         return function_exists('posix_isatty') && @posix_isatty($this->stream);
diff --git a/vendor/symfony/console/Question/Question.php b/vendor/symfony/console/Question/Question.php
index 01702b2..ffe9417 100644
--- a/vendor/symfony/console/Question/Question.php
+++ b/vendor/symfony/console/Question/Question.php
@@ -217,7 +217,7 @@ public function getMaxAttempts()
      *
      * The normalizer can be a callable (a string), a closure or a class implementing __invoke.
      *
-     * @param string|\Closure $normalizer
+     * @param callable $normalizer
      *
      * @return Question The current instance
      */
@@ -233,7 +233,7 @@ public function setNormalizer($normalizer)
      *
      * The normalizer can ba a callable (a string), a closure or a class implementing __invoke.
      *
-     * @return string|\Closure
+     * @return callable
      */
     public function getNormalizer()
     {
diff --git a/vendor/symfony/console/Style/SymfonyStyle.php b/vendor/symfony/console/Style/SymfonyStyle.php
index 0d366c7..6e9c64f 100644
--- a/vendor/symfony/console/Style/SymfonyStyle.php
+++ b/vendor/symfony/console/Style/SymfonyStyle.php
@@ -164,7 +164,7 @@ public function text($message)
      */
     public function success($message)
     {
-        $this->block($message, 'OK', 'fg=white;bg=green', ' ', true);
+        $this->block($message, 'OK', 'fg=black;bg=green', ' ', true);
     }
 
     /**
diff --git a/vendor/symfony/console/composer.json b/vendor/symfony/console/composer.json
index 16b7b81..38903ab 100644
--- a/vendor/symfony/console/composer.json
+++ b/vendor/symfony/console/composer.json
@@ -19,7 +19,6 @@
         "php": ">=5.3.9"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
         "symfony/event-dispatcher": "~2.1",
         "symfony/process": "~2.1",
         "psr/log": "~1.0"
diff --git a/vendor/symfony/css-selector/CssSelector.php b/vendor/symfony/css-selector/CssSelector.php
index 82c9283..579700a 100644
--- a/vendor/symfony/css-selector/CssSelector.php
+++ b/vendor/symfony/css-selector/CssSelector.php
@@ -61,8 +61,6 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class CssSelector
 {
@@ -77,8 +75,6 @@ class CssSelector
      * @param string $prefix  An optional prefix for the XPath expression.
      *
      * @return string
-     *
-     * @api
      */
     public static function toXPath($cssExpr, $prefix = 'descendant-or-self::')
     {
diff --git a/vendor/symfony/css-selector/composer.json b/vendor/symfony/css-selector/composer.json
index c7aebf7..99eb4da 100644
--- a/vendor/symfony/css-selector/composer.json
+++ b/vendor/symfony/css-selector/composer.json
@@ -22,9 +22,6 @@
     "require": {
         "php": ">=5.3.9"
     },
-    "require-dev": {
-        "symfony/phpunit-bridge": "~2.7"
-    },
     "autoload": {
         "psr-4": { "Symfony\\Component\\CssSelector\\": "" }
     },
diff --git a/vendor/symfony/debug/DebugClassLoader.php b/vendor/symfony/debug/DebugClassLoader.php
index 37d15d1..8c79774 100644
--- a/vendor/symfony/debug/DebugClassLoader.php
+++ b/vendor/symfony/debug/DebugClassLoader.php
@@ -21,8 +21,6 @@
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Christophe Coevoet <stof@notk.org>
  * @author Nicolas Grekas <p@tchwork.com>
- *
- * @api
  */
 class DebugClassLoader
 {
@@ -38,8 +36,6 @@ class DebugClassLoader
      * Constructor.
      *
      * @param callable|object $classLoader Passing an object is @deprecated since version 2.5 and support for it will be removed in 3.0
-     *
-     * @api
      */
     public function __construct($classLoader)
     {
diff --git a/vendor/symfony/debug/composer.json b/vendor/symfony/debug/composer.json
index b384f85..c1b128a 100644
--- a/vendor/symfony/debug/composer.json
+++ b/vendor/symfony/debug/composer.json
@@ -23,7 +23,6 @@
         "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
         "symfony/class-loader": "~2.2",
         "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2"
     },
diff --git a/vendor/symfony/dependency-injection/Alias.php b/vendor/symfony/dependency-injection/Alias.php
index 025a2d6..5a6c2fe 100644
--- a/vendor/symfony/dependency-injection/Alias.php
+++ b/vendor/symfony/dependency-injection/Alias.php
@@ -11,9 +11,6 @@
 
 namespace Symfony\Component\DependencyInjection;
 
-/**
- * @api
- */
 class Alias
 {
     private $id;
@@ -24,8 +21,6 @@ class Alias
      *
      * @param string $id     Alias identifier
      * @param bool   $public If this alias is public
-     *
-     * @api
      */
     public function __construct($id, $public = true)
     {
@@ -37,8 +32,6 @@ public function __construct($id, $public = true)
      * Checks if this DI Alias should be public or not.
      *
      * @return bool
-     *
-     * @api
      */
     public function isPublic()
     {
@@ -49,8 +42,6 @@ public function isPublic()
      * Sets if this Alias is public.
      *
      * @param bool $boolean If this Alias should be public
-     *
-     * @api
      */
     public function setPublic($boolean)
     {
@@ -61,8 +52,6 @@ public function setPublic($boolean)
      * Returns the Id of this alias.
      *
      * @return string The alias id
-     *
-     * @api
      */
     public function __toString()
     {
diff --git a/vendor/symfony/dependency-injection/Compiler/CheckReferenceValidityPass.php b/vendor/symfony/dependency-injection/Compiler/CheckReferenceValidityPass.php
index 3d4988d..82202a9 100644
--- a/vendor/symfony/dependency-injection/Compiler/CheckReferenceValidityPass.php
+++ b/vendor/symfony/dependency-injection/Compiler/CheckReferenceValidityPass.php
@@ -64,7 +64,6 @@ public function process(ContainerBuilder $container)
             }
 
             $this->currentId = $id;
-            $this->currentDefinition = $definition;
             $this->currentScope = $scope = $definition->getScope();
 
             if (ContainerInterface::SCOPE_CONTAINER === $scope) {
diff --git a/vendor/symfony/dependency-injection/Compiler/Compiler.php b/vendor/symfony/dependency-injection/Compiler/Compiler.php
index 4dfa9cf..4e4c2cd 100644
--- a/vendor/symfony/dependency-injection/Compiler/Compiler.php
+++ b/vendor/symfony/dependency-injection/Compiler/Compiler.php
@@ -17,8 +17,6 @@
  * This class is used to remove circular dependencies between individual passes.
  *
  * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- *
- * @api
  */
 class Compiler
 {
@@ -41,8 +39,6 @@ public function __construct()
      * Returns the PassConfig.
      *
      * @return PassConfig The PassConfig instance
-     *
-     * @api
      */
     public function getPassConfig()
     {
@@ -53,8 +49,6 @@ public function getPassConfig()
      * Returns the ServiceReferenceGraph.
      *
      * @return ServiceReferenceGraph The ServiceReferenceGraph instance
-     *
-     * @api
      */
     public function getServiceReferenceGraph()
     {
@@ -76,8 +70,6 @@ public function getLoggingFormatter()
      *
      * @param CompilerPassInterface $pass A compiler pass
      * @param string                $type The type of the pass
-     *
-     * @api
      */
     public function addPass(CompilerPassInterface $pass, $type = PassConfig::TYPE_BEFORE_OPTIMIZATION)
     {
@@ -108,8 +100,6 @@ public function getLog()
      * Run the Compiler and process all Passes.
      *
      * @param ContainerBuilder $container
-     *
-     * @api
      */
     public function compile(ContainerBuilder $container)
     {
diff --git a/vendor/symfony/dependency-injection/Compiler/CompilerPassInterface.php b/vendor/symfony/dependency-injection/Compiler/CompilerPassInterface.php
index 7648605..30cb1d5 100644
--- a/vendor/symfony/dependency-injection/Compiler/CompilerPassInterface.php
+++ b/vendor/symfony/dependency-injection/Compiler/CompilerPassInterface.php
@@ -17,8 +17,6 @@
  * Interface that must be implemented by compilation passes.
  *
  * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- *
- * @api
  */
 interface CompilerPassInterface
 {
@@ -26,8 +24,6 @@
      * You can modify the container here before it is dumped to PHP code.
      *
      * @param ContainerBuilder $container
-     *
-     * @api
      */
     public function process(ContainerBuilder $container);
 }
diff --git a/vendor/symfony/dependency-injection/Compiler/ExtensionCompilerPass.php b/vendor/symfony/dependency-injection/Compiler/ExtensionCompilerPass.php
index a9b418d..b06b497 100644
--- a/vendor/symfony/dependency-injection/Compiler/ExtensionCompilerPass.php
+++ b/vendor/symfony/dependency-injection/Compiler/ExtensionCompilerPass.php
@@ -1,5 +1,14 @@
 <?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\DependencyInjection\Compiler;
 
 use Symfony\Component\DependencyInjection\ContainerBuilder;
diff --git a/vendor/symfony/dependency-injection/Compiler/PassConfig.php b/vendor/symfony/dependency-injection/Compiler/PassConfig.php
index d6dee26..2849dfe 100644
--- a/vendor/symfony/dependency-injection/Compiler/PassConfig.php
+++ b/vendor/symfony/dependency-injection/Compiler/PassConfig.php
@@ -19,8 +19,6 @@
  * This class has a default configuration embedded.
  *
  * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- *
- * @api
  */
 class PassConfig
 {
@@ -75,8 +73,6 @@ public function __construct()
      * Returns all passes in order to be processed.
      *
      * @return array An array of all passes to process
-     *
-     * @api
      */
     public function getPasses()
     {
@@ -97,8 +93,6 @@ public function getPasses()
      * @param string                $type The pass type
      *
      * @throws InvalidArgumentException when a pass type doesn't exist
-     *
-     * @api
      */
     public function addPass(CompilerPassInterface $pass, $type = self::TYPE_BEFORE_OPTIMIZATION)
     {
@@ -115,8 +109,6 @@ public function addPass(CompilerPassInterface $pass, $type = self::TYPE_BEFORE_O
      * Gets all passes for the AfterRemoving pass.
      *
      * @return array An array of passes
-     *
-     * @api
      */
     public function getAfterRemovingPasses()
     {
@@ -127,8 +119,6 @@ public function getAfterRemovingPasses()
      * Gets all passes for the BeforeOptimization pass.
      *
      * @return array An array of passes
-     *
-     * @api
      */
     public function getBeforeOptimizationPasses()
     {
@@ -139,8 +129,6 @@ public function getBeforeOptimizationPasses()
      * Gets all passes for the BeforeRemoving pass.
      *
      * @return array An array of passes
-     *
-     * @api
      */
     public function getBeforeRemovingPasses()
     {
@@ -151,8 +139,6 @@ public function getBeforeRemovingPasses()
      * Gets all passes for the Optimization pass.
      *
      * @return array An array of passes
-     *
-     * @api
      */
     public function getOptimizationPasses()
     {
@@ -163,8 +149,6 @@ public function getOptimizationPasses()
      * Gets all passes for the Removing pass.
      *
      * @return array An array of passes
-     *
-     * @api
      */
     public function getRemovingPasses()
     {
@@ -175,8 +159,6 @@ public function getRemovingPasses()
      * Gets all passes for the Merge pass.
      *
      * @return array An array of passes
-     *
-     * @api
      */
     public function getMergePass()
     {
@@ -187,8 +169,6 @@ public function getMergePass()
      * Sets the Merge Pass.
      *
      * @param CompilerPassInterface $pass The merge pass
-     *
-     * @api
      */
     public function setMergePass(CompilerPassInterface $pass)
     {
@@ -199,8 +179,6 @@ public function setMergePass(CompilerPassInterface $pass)
      * Sets the AfterRemoving passes.
      *
      * @param array $passes An array of passes
-     *
-     * @api
      */
     public function setAfterRemovingPasses(array $passes)
     {
@@ -211,8 +189,6 @@ public function setAfterRemovingPasses(array $passes)
      * Sets the BeforeOptimization passes.
      *
      * @param array $passes An array of passes
-     *
-     * @api
      */
     public function setBeforeOptimizationPasses(array $passes)
     {
@@ -223,8 +199,6 @@ public function setBeforeOptimizationPasses(array $passes)
      * Sets the BeforeRemoving passes.
      *
      * @param array $passes An array of passes
-     *
-     * @api
      */
     public function setBeforeRemovingPasses(array $passes)
     {
@@ -235,8 +209,6 @@ public function setBeforeRemovingPasses(array $passes)
      * Sets the Optimization passes.
      *
      * @param array $passes An array of passes
-     *
-     * @api
      */
     public function setOptimizationPasses(array $passes)
     {
@@ -247,8 +219,6 @@ public function setOptimizationPasses(array $passes)
      * Sets the Removing passes.
      *
      * @param array $passes An array of passes
-     *
-     * @api
      */
     public function setRemovingPasses(array $passes)
     {
diff --git a/vendor/symfony/dependency-injection/Container.php b/vendor/symfony/dependency-injection/Container.php
index f0db5de..510d030 100644
--- a/vendor/symfony/dependency-injection/Container.php
+++ b/vendor/symfony/dependency-injection/Container.php
@@ -57,8 +57,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- *
- * @api
  */
 class Container implements IntrospectableContainerInterface
 {
@@ -82,8 +80,6 @@ class Container implements IntrospectableContainerInterface
      * Constructor.
      *
      * @param ParameterBagInterface $parameterBag A ParameterBagInterface instance
-     *
-     * @api
      */
     public function __construct(ParameterBagInterface $parameterBag = null)
     {
@@ -97,8 +93,6 @@ public function __construct(ParameterBagInterface $parameterBag = null)
      *
      *  * Parameter values are resolved;
      *  * The parameter bag is frozen.
-     *
-     * @api
      */
     public function compile()
     {
@@ -111,8 +105,6 @@ public function compile()
      * Returns true if the container parameter bag are frozen.
      *
      * @return bool true if the container parameter bag are frozen, false otherwise
-     *
-     * @api
      */
     public function isFrozen()
     {
@@ -123,8 +115,6 @@ public function isFrozen()
      * Gets the service container parameter bag.
      *
      * @return ParameterBagInterface A ParameterBagInterface instance
-     *
-     * @api
      */
     public function getParameterBag()
     {
@@ -139,8 +129,6 @@ public function getParameterBag()
      * @return mixed The parameter value
      *
      * @throws InvalidArgumentException if the parameter is not defined
-     *
-     * @api
      */
     public function getParameter($name)
     {
@@ -153,8 +141,6 @@ public function getParameter($name)
      * @param string $name The parameter name
      *
      * @return bool The presence of parameter in container
-     *
-     * @api
      */
     public function hasParameter($name)
     {
@@ -166,8 +152,6 @@ public function hasParameter($name)
      *
      * @param string $name  The parameter name
      * @param mixed  $value The parameter value
-     *
-     * @api
      */
     public function setParameter($name, $value)
     {
@@ -186,8 +170,6 @@ public function setParameter($name, $value)
      *
      * @throws RuntimeException         When trying to set a service in an inactive scope
      * @throws InvalidArgumentException When trying to set a service in the prototype scope
-     *
-     * @api
      */
     public function set($id, $service, $scope = self::SCOPE_CONTAINER)
     {
@@ -232,8 +214,6 @@ public function set($id, $service, $scope = self::SCOPE_CONTAINER)
      * @param string $id The service identifier
      *
      * @return bool true if the service is defined, false otherwise
-     *
-     * @api
      */
     public function has($id)
     {
@@ -269,8 +249,6 @@ public function has($id)
      * @throws \Exception                        if an exception has been thrown when the service has been resolved
      *
      * @see Reference
-     *
-     * @api
      */
     public function get($id, $invalidBehavior = self::EXCEPTION_ON_INVALID_REFERENCE)
     {
@@ -395,8 +373,6 @@ public function getServiceIds()
      *
      * @throws RuntimeException         When the parent scope is inactive
      * @throws InvalidArgumentException When the scope does not exist
-     *
-     * @api
      */
     public function enterScope($name)
     {
@@ -443,8 +419,6 @@ public function enterScope($name)
      * @param string $name The name of the scope to leave
      *
      * @throws InvalidArgumentException if the scope is not active
-     *
-     * @api
      */
     public function leaveScope($name)
     {
@@ -490,8 +464,6 @@ public function leaveScope($name)
      * @param ScopeInterface $scope
      *
      * @throws InvalidArgumentException
-     *
-     * @api
      */
     public function addScope(ScopeInterface $scope)
     {
@@ -524,8 +496,6 @@ public function addScope(ScopeInterface $scope)
      * @param string $name The name of the scope
      *
      * @return bool
-     *
-     * @api
      */
     public function hasScope($name)
     {
@@ -540,8 +510,6 @@ public function hasScope($name)
      * @param string $name
      *
      * @return bool
-     *
-     * @api
      */
     public function isScopeActive($name)
     {
diff --git a/vendor/symfony/dependency-injection/ContainerAware.php b/vendor/symfony/dependency-injection/ContainerAware.php
index 4096915..af977fe 100644
--- a/vendor/symfony/dependency-injection/ContainerAware.php
+++ b/vendor/symfony/dependency-injection/ContainerAware.php
@@ -15,15 +15,11 @@
  * A simple implementation of ContainerAwareInterface.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 abstract class ContainerAware implements ContainerAwareInterface
 {
     /**
      * @var ContainerInterface
-     *
-     * @api
      */
     protected $container;
 
@@ -31,8 +27,6 @@
      * Sets the Container associated with this Controller.
      *
      * @param ContainerInterface $container A ContainerInterface instance
-     *
-     * @api
      */
     public function setContainer(ContainerInterface $container = null)
     {
diff --git a/vendor/symfony/dependency-injection/ContainerAwareInterface.php b/vendor/symfony/dependency-injection/ContainerAwareInterface.php
index e85bb53..7007265 100644
--- a/vendor/symfony/dependency-injection/ContainerAwareInterface.php
+++ b/vendor/symfony/dependency-injection/ContainerAwareInterface.php
@@ -15,8 +15,6 @@
  * ContainerAwareInterface should be implemented by classes that depends on a Container.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface ContainerAwareInterface
 {
@@ -24,8 +22,6 @@
      * Sets the Container.
      *
      * @param ContainerInterface|null $container A ContainerInterface instance or null
-     *
-     * @api
      */
     public function setContainer(ContainerInterface $container = null);
 }
diff --git a/vendor/symfony/dependency-injection/ContainerBuilder.php b/vendor/symfony/dependency-injection/ContainerBuilder.php
index e697814..d692873 100644
--- a/vendor/symfony/dependency-injection/ContainerBuilder.php
+++ b/vendor/symfony/dependency-injection/ContainerBuilder.php
@@ -31,8 +31,6 @@
  * ContainerBuilder is a DI container that provides an API to easily describe services.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class ContainerBuilder extends Container implements TaggedContainerInterface
 {
@@ -127,8 +125,6 @@ public function setProxyInstantiator(InstantiatorInterface $proxyInstantiator)
      * Registers an extension.
      *
      * @param ExtensionInterface $extension An extension instance
-     *
-     * @api
      */
     public function registerExtension(ExtensionInterface $extension)
     {
@@ -147,8 +143,6 @@ public function registerExtension(ExtensionInterface $extension)
      * @return ExtensionInterface An extension instance
      *
      * @throws LogicException if the extension is not registered
-     *
-     * @api
      */
     public function getExtension($name)
     {
@@ -167,8 +161,6 @@ public function getExtension($name)
      * Returns all registered extensions.
      *
      * @return ExtensionInterface[] An array of ExtensionInterface
-     *
-     * @api
      */
     public function getExtensions()
     {
@@ -181,8 +173,6 @@ public function getExtensions()
      * @param string $name The name of the extension
      *
      * @return bool If the extension exists
-     *
-     * @api
      */
     public function hasExtension($name)
     {
@@ -193,8 +183,6 @@ public function hasExtension($name)
      * Returns an array of resources loaded to build this configuration.
      *
      * @return ResourceInterface[] An array of resources
-     *
-     * @api
      */
     public function getResources()
     {
@@ -207,8 +195,6 @@ public function getResources()
      * @param ResourceInterface $resource A resource instance
      *
      * @return ContainerBuilder The current instance
-     *
-     * @api
      */
     public function addResource(ResourceInterface $resource)
     {
@@ -227,8 +213,6 @@ public function addResource(ResourceInterface $resource)
      * @param ResourceInterface[] $resources An array of resources
      *
      * @return ContainerBuilder The current instance
-     *
-     * @api
      */
     public function setResources(array $resources)
     {
@@ -247,8 +231,6 @@ public function setResources(array $resources)
      * @param object $object An object instance
      *
      * @return ContainerBuilder The current instance
-     *
-     * @api
      */
     public function addObjectResource($object)
     {
@@ -289,8 +271,6 @@ public function addClassResource(\ReflectionClass $class)
      *
      * @throws BadMethodCallException When this ContainerBuilder is frozen
      * @throws \LogicException        if the container is frozen
-     *
-     * @api
      */
     public function loadFromExtension($extension, array $values = array())
     {
@@ -312,8 +292,6 @@ public function loadFromExtension($extension, array $values = array())
      * @param string                $type The type of compiler pass
      *
      * @return ContainerBuilder The current instance
-     *
-     * @api
      */
     public function addCompilerPass(CompilerPassInterface $pass, $type = PassConfig::TYPE_BEFORE_OPTIMIZATION)
     {
@@ -328,8 +306,6 @@ public function addCompilerPass(CompilerPassInterface $pass, $type = PassConfig:
      * Returns the compiler pass config which can then be modified.
      *
      * @return PassConfig The compiler pass config
-     *
-     * @api
      */
     public function getCompilerPassConfig()
     {
@@ -340,8 +316,6 @@ public function getCompilerPassConfig()
      * Returns the compiler.
      *
      * @return Compiler The compiler
-     *
-     * @api
      */
     public function getCompiler()
     {
@@ -356,8 +330,6 @@ public function getCompiler()
      * Returns all Scopes.
      *
      * @return array An array of scopes
-     *
-     * @api
      */
     public function getScopes()
     {
@@ -368,8 +340,6 @@ public function getScopes()
      * Returns all Scope children.
      *
      * @return array An array of scope children.
-     *
-     * @api
      */
     public function getScopeChildren()
     {
@@ -384,8 +354,6 @@ public function getScopeChildren()
      * @param string $scope   The scope
      *
      * @throws BadMethodCallException When this ContainerBuilder is frozen
-     *
-     * @api
      */
     public function set($id, $service, $scope = self::SCOPE_CONTAINER)
     {
@@ -421,8 +389,6 @@ public function set($id, $service, $scope = self::SCOPE_CONTAINER)
      * Removes a service definition.
      *
      * @param string $id The service identifier
-     *
-     * @api
      */
     public function removeDefinition($id)
     {
@@ -435,8 +401,6 @@ public function removeDefinition($id)
      * @param string $id The service identifier
      *
      * @return bool true if the service is defined, false otherwise
-     *
-     * @api
      */
     public function has($id)
     {
@@ -459,8 +423,6 @@ public function has($id)
      * @throws \Exception
      *
      * @see Reference
-     *
-     * @api
      */
     public function get($id, $invalidBehavior = ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE)
     {
@@ -524,8 +486,6 @@ public function get($id, $invalidBehavior = ContainerInterface::EXCEPTION_ON_INV
      * @param ContainerBuilder $container The ContainerBuilder instance to merge.
      *
      * @throws BadMethodCallException When this ContainerBuilder is frozen
-     *
-     * @api
      */
     public function merge(ContainerBuilder $container)
     {
@@ -558,8 +518,6 @@ public function merge(ContainerBuilder $container)
      * @param string $name The name of the extension
      *
      * @return array An array of configuration
-     *
-     * @api
      */
     public function getExtensionConfig($name)
     {
@@ -598,8 +556,6 @@ public function prependExtensionConfig($name, array $config)
      *  * Parameter values are resolved;
      *  * The parameter bag is frozen;
      *  * Extension loading is disabled.
-     *
-     * @api
      */
     public function compile()
     {
@@ -640,8 +596,6 @@ public function getServiceIds()
      * Adds the service aliases.
      *
      * @param array $aliases An array of aliases
-     *
-     * @api
      */
     public function addAliases(array $aliases)
     {
@@ -654,8 +608,6 @@ public function addAliases(array $aliases)
      * Sets the service aliases.
      *
      * @param array $aliases An array of aliases
-     *
-     * @api
      */
     public function setAliases(array $aliases)
     {
@@ -671,8 +623,6 @@ public function setAliases(array $aliases)
      *
      * @throws InvalidArgumentException if the id is not a string or an Alias
      * @throws InvalidArgumentException if the alias is for itself
-     *
-     * @api
      */
     public function setAlias($alias, $id)
     {
@@ -697,8 +647,6 @@ public function setAlias($alias, $id)
      * Removes an alias.
      *
      * @param string $alias The alias to remove
-     *
-     * @api
      */
     public function removeAlias($alias)
     {
@@ -711,8 +659,6 @@ public function removeAlias($alias)
      * @param string $id The service identifier
      *
      * @return bool true if the alias exists, false otherwise
-     *
-     * @api
      */
     public function hasAlias($id)
     {
@@ -723,8 +669,6 @@ public function hasAlias($id)
      * Gets all defined aliases.
      *
      * @return Alias[] An array of aliases
-     *
-     * @api
      */
     public function getAliases()
     {
@@ -739,8 +683,6 @@ public function getAliases()
      * @return Alias An Alias instance
      *
      * @throws InvalidArgumentException if the alias does not exist
-     *
-     * @api
      */
     public function getAlias($id)
     {
@@ -763,8 +705,6 @@ public function getAlias($id)
      * @param string $class The service class
      *
      * @return Definition A Definition instance
-     *
-     * @api
      */
     public function register($id, $class = null)
     {
@@ -775,8 +715,6 @@ public function register($id, $class = null)
      * Adds the service definitions.
      *
      * @param Definition[] $definitions An array of service definitions
-     *
-     * @api
      */
     public function addDefinitions(array $definitions)
     {
@@ -789,8 +727,6 @@ public function addDefinitions(array $definitions)
      * Sets the service definitions.
      *
      * @param Definition[] $definitions An array of service definitions
-     *
-     * @api
      */
     public function setDefinitions(array $definitions)
     {
@@ -802,8 +738,6 @@ public function setDefinitions(array $definitions)
      * Gets all service definitions.
      *
      * @return Definition[] An array of Definition instances
-     *
-     * @api
      */
     public function getDefinitions()
     {
@@ -819,8 +753,6 @@ public function getDefinitions()
      * @return Definition the service definition
      *
      * @throws BadMethodCallException When this ContainerBuilder is frozen
-     *
-     * @api
      */
     public function setDefinition($id, Definition $definition)
     {
@@ -841,8 +773,6 @@ public function setDefinition($id, Definition $definition)
      * @param string $id The service identifier
      *
      * @return bool true if the service definition exists, false otherwise
-     *
-     * @api
      */
     public function hasDefinition($id)
     {
@@ -857,8 +787,6 @@ public function hasDefinition($id)
      * @return Definition A Definition instance
      *
      * @throws InvalidArgumentException if the service definition does not exist
-     *
-     * @api
      */
     public function getDefinition($id)
     {
@@ -881,8 +809,6 @@ public function getDefinition($id)
      * @return Definition A Definition instance
      *
      * @throws InvalidArgumentException if the service definition does not exist
-     *
-     * @api
      */
     public function findDefinition($id)
     {
@@ -1012,7 +938,9 @@ public function createService(Definition $definition, $id, $tryProxy = true)
     public function resolveServices($value)
     {
         if (is_array($value)) {
-            $value = array_map(array($this, 'resolveServices'), $value);
+            foreach ($value as $k => $v) {
+                $value[$k] = $this->resolveServices($v);
+            }
         } elseif ($value instanceof Reference) {
             $value = $this->get((string) $value, $value->getInvalidBehavior());
         } elseif ($value instanceof Definition) {
@@ -1041,8 +969,6 @@ public function resolveServices($value)
      * @param string $name The tag name
      *
      * @return array An array of tags with the tagged service as key, holding a list of attribute arrays.
-     *
-     * @api
      */
     public function findTaggedServiceIds($name)
     {
diff --git a/vendor/symfony/dependency-injection/ContainerInterface.php b/vendor/symfony/dependency-injection/ContainerInterface.php
index 19e800b..80d6414 100644
--- a/vendor/symfony/dependency-injection/ContainerInterface.php
+++ b/vendor/symfony/dependency-injection/ContainerInterface.php
@@ -20,8 +20,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- *
- * @api
  */
 interface ContainerInterface
 {
@@ -37,8 +35,6 @@
      * @param string $id      The service identifier
      * @param object $service The service instance
      * @param string $scope   The scope of the service
-     *
-     * @api
      */
     public function set($id, $service, $scope = self::SCOPE_CONTAINER);
 
@@ -54,8 +50,6 @@ public function set($id, $service, $scope = self::SCOPE_CONTAINER);
      * @throws ServiceNotFoundException          When the service is not defined
      *
      * @see Reference
-     *
-     * @api
      */
     public function get($id, $invalidBehavior = self::EXCEPTION_ON_INVALID_REFERENCE);
 
@@ -65,8 +59,6 @@ public function get($id, $invalidBehavior = self::EXCEPTION_ON_INVALID_REFERENCE
      * @param string $id The service identifier
      *
      * @return bool true if the service is defined, false otherwise
-     *
-     * @api
      */
     public function has($id);
 
@@ -78,8 +70,6 @@ public function has($id);
      * @return mixed The parameter value
      *
      * @throws InvalidArgumentException if the parameter is not defined
-     *
-     * @api
      */
     public function getParameter($name);
 
@@ -89,8 +79,6 @@ public function getParameter($name);
      * @param string $name The parameter name
      *
      * @return bool The presence of parameter in container
-     *
-     * @api
      */
     public function hasParameter($name);
 
@@ -99,8 +87,6 @@ public function hasParameter($name);
      *
      * @param string $name  The parameter name
      * @param mixed  $value The parameter value
-     *
-     * @api
      */
     public function setParameter($name, $value);
 
@@ -108,8 +94,6 @@ public function setParameter($name, $value);
      * Enters the given scope.
      *
      * @param string $name
-     *
-     * @api
      */
     public function enterScope($name);
 
@@ -117,8 +101,6 @@ public function enterScope($name);
      * Leaves the current scope, and re-enters the parent scope.
      *
      * @param string $name
-     *
-     * @api
      */
     public function leaveScope($name);
 
@@ -126,8 +108,6 @@ public function leaveScope($name);
      * Adds a scope to the container.
      *
      * @param ScopeInterface $scope
-     *
-     * @api
      */
     public function addScope(ScopeInterface $scope);
 
@@ -137,8 +117,6 @@ public function addScope(ScopeInterface $scope);
      * @param string $name
      *
      * @return bool
-     *
-     * @api
      */
     public function hasScope($name);
 
@@ -150,8 +128,6 @@ public function hasScope($name);
      * @param string $name
      *
      * @return bool
-     *
-     * @api
      */
     public function isScopeActive($name);
 }
diff --git a/vendor/symfony/dependency-injection/Definition.php b/vendor/symfony/dependency-injection/Definition.php
index 60dac83..777f4a6 100644
--- a/vendor/symfony/dependency-injection/Definition.php
+++ b/vendor/symfony/dependency-injection/Definition.php
@@ -18,8 +18,6 @@
  * Definition represents a service definition.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Definition
 {
@@ -48,8 +46,6 @@ class Definition
      *
      * @param string|null $class     The service class
      * @param array       $arguments An array of arguments to pass to the service constructor
-     *
-     * @api
      */
     public function __construct($class = null, array $arguments = array())
     {
@@ -93,8 +89,6 @@ public function getFactory()
      *
      * @return Definition The current instance
      *
-     * @api
-     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function setFactoryClass($factoryClass)
@@ -111,8 +105,6 @@ public function setFactoryClass($factoryClass)
      *
      * @return string|null The factory class name
      *
-     * @api
-     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function getFactoryClass($triggerDeprecationError = true)
@@ -131,8 +123,6 @@ public function getFactoryClass($triggerDeprecationError = true)
      *
      * @return Definition The current instance
      *
-     * @api
-     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function setFactoryMethod($factoryMethod)
@@ -184,8 +174,6 @@ public function getDecoratedService()
      *
      * @return string|null The factory method name
      *
-     * @api
-     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function getFactoryMethod($triggerDeprecationError = true)
@@ -204,8 +192,6 @@ public function getFactoryMethod($triggerDeprecationError = true)
      *
      * @return Definition The current instance
      *
-     * @api
-     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function setFactoryService($factoryService)
@@ -222,8 +208,6 @@ public function setFactoryService($factoryService)
      *
      * @return string|null The factory service id
      *
-     * @api
-     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function getFactoryService($triggerDeprecationError = true)
@@ -241,8 +225,6 @@ public function getFactoryService($triggerDeprecationError = true)
      * @param string $class The service class
      *
      * @return Definition The current instance
-     *
-     * @api
      */
     public function setClass($class)
     {
@@ -255,8 +237,6 @@ public function setClass($class)
      * Gets the service class.
      *
      * @return string|null The service class
-     *
-     * @api
      */
     public function getClass()
     {
@@ -269,8 +249,6 @@ public function getClass()
      * @param array $arguments An array of arguments
      *
      * @return Definition The current instance
-     *
-     * @api
      */
     public function setArguments(array $arguments)
     {
@@ -279,9 +257,6 @@ public function setArguments(array $arguments)
         return $this;
     }
 
-    /**
-     * @api
-     */
     public function setProperties(array $properties)
     {
         $this->properties = $properties;
@@ -289,17 +264,11 @@ public function setProperties(array $properties)
         return $this;
     }
 
-    /**
-     * @api
-     */
     public function getProperties()
     {
         return $this->properties;
     }
 
-    /**
-     * @api
-     */
     public function setProperty($name, $value)
     {
         $this->properties[$name] = $value;
@@ -313,8 +282,6 @@ public function setProperty($name, $value)
      * @param mixed $argument An argument
      *
      * @return Definition The current instance
-     *
-     * @api
      */
     public function addArgument($argument)
     {
@@ -332,8 +299,6 @@ public function addArgument($argument)
      * @return Definition The current instance
      *
      * @throws OutOfBoundsException When the replaced argument does not exist
-     *
-     * @api
      */
     public function replaceArgument($index, $argument)
     {
@@ -350,8 +315,6 @@ public function replaceArgument($index, $argument)
      * Gets the arguments to pass to the service constructor/factory method.
      *
      * @return array The array of arguments
-     *
-     * @api
      */
     public function getArguments()
     {
@@ -366,8 +329,6 @@ public function getArguments()
      * @return mixed The argument value
      *
      * @throws OutOfBoundsException When the argument does not exist
-     *
-     * @api
      */
     public function getArgument($index)
     {
@@ -384,8 +345,6 @@ public function getArgument($index)
      * @param array $calls An array of method calls
      *
      * @return Definition The current instance
-     *
-     * @api
      */
     public function setMethodCalls(array $calls = array())
     {
@@ -406,8 +365,6 @@ public function setMethodCalls(array $calls = array())
      * @return Definition The current instance
      *
      * @throws InvalidArgumentException on empty $method param
-     *
-     * @api
      */
     public function addMethodCall($method, array $arguments = array())
     {
@@ -425,8 +382,6 @@ public function addMethodCall($method, array $arguments = array())
      * @param string $method The method name to remove
      *
      * @return Definition The current instance
-     *
-     * @api
      */
     public function removeMethodCall($method)
     {
@@ -446,8 +401,6 @@ public function removeMethodCall($method)
      * @param string $method The method name to search for
      *
      * @return bool
-     *
-     * @api
      */
     public function hasMethodCall($method)
     {
@@ -464,8 +417,6 @@ public function hasMethodCall($method)
      * Gets the methods to call after service initialization.
      *
      * @return array An array of method calls
-     *
-     * @api
      */
     public function getMethodCalls()
     {
@@ -478,8 +429,6 @@ public function getMethodCalls()
      * @param array $tags
      *
      * @return Definition the current instance
-     *
-     * @api
      */
     public function setTags(array $tags)
     {
@@ -492,8 +441,6 @@ public function setTags(array $tags)
      * Returns all tags.
      *
      * @return array An array of tags
-     *
-     * @api
      */
     public function getTags()
     {
@@ -506,8 +453,6 @@ public function getTags()
      * @param string $name The tag name
      *
      * @return array An array of attributes
-     *
-     * @api
      */
     public function getTag($name)
     {
@@ -521,8 +466,6 @@ public function getTag($name)
      * @param array  $attributes An array of attributes
      *
      * @return Definition The current instance
-     *
-     * @api
      */
     public function addTag($name, array $attributes = array())
     {
@@ -537,8 +480,6 @@ public function addTag($name, array $attributes = array())
      * @param string $name
      *
      * @return bool
-     *
-     * @api
      */
     public function hasTag($name)
     {
@@ -565,8 +506,6 @@ public function clearTag($name)
      * Clears the tags for this definition.
      *
      * @return Definition The current instance
-     *
-     * @api
      */
     public function clearTags()
     {
@@ -581,8 +520,6 @@ public function clearTags()
      * @param string $file A full pathname to include
      *
      * @return Definition The current instance
-     *
-     * @api
      */
     public function setFile($file)
     {
@@ -595,8 +532,6 @@ public function setFile($file)
      * Gets the file to require before creating the service.
      *
      * @return string|null The full pathname to include
-     *
-     * @api
      */
     public function getFile()
     {
@@ -609,8 +544,6 @@ public function getFile()
      * @param string $scope Whether the service must be shared or not
      *
      * @return Definition The current instance
-     *
-     * @api
      */
     public function setScope($scope)
     {
@@ -623,8 +556,6 @@ public function setScope($scope)
      * Returns the scope of the service.
      *
      * @return string
-     *
-     * @api
      */
     public function getScope()
     {
@@ -637,8 +568,6 @@ public function getScope()
      * @param bool $boolean
      *
      * @return Definition The current instance
-     *
-     * @api
      */
     public function setPublic($boolean)
     {
@@ -651,8 +580,6 @@ public function setPublic($boolean)
      * Whether this service is public facing.
      *
      * @return bool
-     *
-     * @api
      */
     public function isPublic()
     {
@@ -666,8 +593,6 @@ public function isPublic()
      *
      * @return Definition The current instance
      *
-     * @api
-     *
      * @deprecated since version 2.7, will be removed in 3.0.
      */
     public function setSynchronized($boolean, $triggerDeprecationError = true)
@@ -686,8 +611,6 @@ public function setSynchronized($boolean, $triggerDeprecationError = true)
      *
      * @return bool
      *
-     * @api
-     *
      * @deprecated since version 2.7, will be removed in 3.0.
      */
     public function isSynchronized($triggerDeprecationError = true)
@@ -730,8 +653,6 @@ public function isLazy()
      * @param bool $boolean
      *
      * @return Definition the current instance
-     *
-     * @api
      */
     public function setSynthetic($boolean)
     {
@@ -745,8 +666,6 @@ public function setSynthetic($boolean)
      * container, but dynamically injected.
      *
      * @return bool
-     *
-     * @api
      */
     public function isSynthetic()
     {
@@ -760,8 +679,6 @@ public function isSynthetic()
      * @param bool $boolean
      *
      * @return Definition the current instance
-     *
-     * @api
      */
     public function setAbstract($boolean)
     {
@@ -775,8 +692,6 @@ public function setAbstract($boolean)
      * template for other definitions.
      *
      * @return bool
-     *
-     * @api
      */
     public function isAbstract()
     {
@@ -789,8 +704,6 @@ public function isAbstract()
      * @param callable $callable A PHP callable
      *
      * @return Definition The current instance
-     *
-     * @api
      */
     public function setConfigurator($callable)
     {
@@ -803,8 +716,6 @@ public function setConfigurator($callable)
      * Gets the configurator to call after the service is fully initialized.
      *
      * @return callable|null The PHP callable to call
-     *
-     * @api
      */
     public function getConfigurator()
     {
diff --git a/vendor/symfony/dependency-injection/DefinitionDecorator.php b/vendor/symfony/dependency-injection/DefinitionDecorator.php
index f5a1485..334127a 100644
--- a/vendor/symfony/dependency-injection/DefinitionDecorator.php
+++ b/vendor/symfony/dependency-injection/DefinitionDecorator.php
@@ -18,8 +18,6 @@
  * This definition decorates another definition.
  *
  * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- *
- * @api
  */
 class DefinitionDecorator extends Definition
 {
@@ -30,8 +28,6 @@ class DefinitionDecorator extends Definition
      * Constructor.
      *
      * @param string $parent The id of Definition instance to decorate.
-     *
-     * @api
      */
     public function __construct($parent)
     {
@@ -44,8 +40,6 @@ public function __construct($parent)
      * Returns the Definition being decorated.
      *
      * @return string
-     *
-     * @api
      */
     public function getParent()
     {
@@ -56,8 +50,6 @@ public function getParent()
      * Returns all changes tracked for the Definition object.
      *
      * @return array An array of changes for this Definition
-     *
-     * @api
      */
     public function getChanges()
     {
@@ -66,8 +58,6 @@ public function getChanges()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function setClass($class)
     {
@@ -89,7 +79,6 @@ public function setFactory($callable)
     /**
      * {@inheritdoc}
      *
-     * @api
      */
     public function setFactoryClass($class)
     {
@@ -100,8 +89,6 @@ public function setFactoryClass($class)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function setFactoryMethod($method)
     {
@@ -112,8 +99,6 @@ public function setFactoryMethod($method)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function setFactoryService($service)
     {
@@ -124,8 +109,6 @@ public function setFactoryService($service)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function setConfigurator($callable)
     {
@@ -136,8 +119,6 @@ public function setConfigurator($callable)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function setFile($file)
     {
@@ -148,8 +129,6 @@ public function setFile($file)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function setPublic($boolean)
     {
@@ -160,8 +139,6 @@ public function setPublic($boolean)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function setLazy($boolean)
     {
@@ -191,8 +168,6 @@ public function setDecoratedService($id, $renamedId = null)
      * @return mixed The argument value
      *
      * @throws OutOfBoundsException When the argument does not exist
-     *
-     * @api
      */
     public function getArgument($index)
     {
@@ -223,8 +198,6 @@ public function getArgument($index)
      * @return DefinitionDecorator the current instance
      *
      * @throws InvalidArgumentException when $index isn't an integer
-     *
-     * @api
      */
     public function replaceArgument($index, $value)
     {
diff --git a/vendor/symfony/dependency-injection/Dumper/Dumper.php b/vendor/symfony/dependency-injection/Dumper/Dumper.php
index 9892401..4b9d586 100644
--- a/vendor/symfony/dependency-injection/Dumper/Dumper.php
+++ b/vendor/symfony/dependency-injection/Dumper/Dumper.php
@@ -17,8 +17,6 @@
  * Dumper is the abstract class for all built-in dumpers.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 abstract class Dumper implements DumperInterface
 {
@@ -28,8 +26,6 @@
      * Constructor.
      *
      * @param ContainerBuilder $container The service container to dump
-     *
-     * @api
      */
     public function __construct(ContainerBuilder $container)
     {
diff --git a/vendor/symfony/dependency-injection/Dumper/DumperInterface.php b/vendor/symfony/dependency-injection/Dumper/DumperInterface.php
index ba146f6..dd001e4 100644
--- a/vendor/symfony/dependency-injection/Dumper/DumperInterface.php
+++ b/vendor/symfony/dependency-injection/Dumper/DumperInterface.php
@@ -15,8 +15,6 @@
  * DumperInterface is the interface implemented by service container dumper classes.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface DumperInterface
 {
@@ -26,8 +24,6 @@
      * @param array $options An array of options
      *
      * @return string The representation of the service container
-     *
-     * @api
      */
     public function dump(array $options = array());
 }
diff --git a/vendor/symfony/dependency-injection/Dumper/PhpDumper.php b/vendor/symfony/dependency-injection/Dumper/PhpDumper.php
index ab2360a..bb3df8b 100644
--- a/vendor/symfony/dependency-injection/Dumper/PhpDumper.php
+++ b/vendor/symfony/dependency-injection/Dumper/PhpDumper.php
@@ -32,8 +32,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- *
- * @api
  */
 class PhpDumper extends Dumper
 {
@@ -72,8 +70,6 @@ class PhpDumper extends Dumper
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function __construct(ContainerBuilder $container)
     {
@@ -104,8 +100,6 @@ public function setProxyDumper(ProxyDumper $proxyDumper)
      * @param array $options An array of options
      *
      * @return string A PHP class representing of the service container
-     *
-     * @api
      */
     public function dump(array $options = array())
     {
diff --git a/vendor/symfony/dependency-injection/Dumper/XmlDumper.php b/vendor/symfony/dependency-injection/Dumper/XmlDumper.php
index 94efc56..bd8e200 100644
--- a/vendor/symfony/dependency-injection/Dumper/XmlDumper.php
+++ b/vendor/symfony/dependency-injection/Dumper/XmlDumper.php
@@ -24,8 +24,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Martin Hasoň <martin.hason@gmail.com>
- *
- * @api
  */
 class XmlDumper extends Dumper
 {
@@ -40,8 +38,6 @@ class XmlDumper extends Dumper
      * @param array $options An array of options
      *
      * @return string An xml string representing of the service container
-     *
-     * @api
      */
     public function dump(array $options = array())
     {
diff --git a/vendor/symfony/dependency-injection/Dumper/YamlDumper.php b/vendor/symfony/dependency-injection/Dumper/YamlDumper.php
index 1d979f0..e8e108c 100644
--- a/vendor/symfony/dependency-injection/Dumper/YamlDumper.php
+++ b/vendor/symfony/dependency-injection/Dumper/YamlDumper.php
@@ -24,8 +24,6 @@
  * YamlDumper dumps a service container as a YAML string.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class YamlDumper extends Dumper
 {
@@ -37,8 +35,6 @@ class YamlDumper extends Dumper
      * @param array $options An array of options
      *
      * @return string A YAML string representing of the service container
-     *
-     * @api
      */
     public function dump(array $options = array())
     {
@@ -166,10 +162,10 @@ private function addService($id, $definition)
     private function addServiceAlias($alias, $id)
     {
         if ($id->isPublic()) {
-            return sprintf("    %s: @%s\n", $alias, $id);
-        } else {
-            return sprintf("    %s:\n        alias: %s\n        public: false", $alias, $id);
+            return sprintf("    %s: '@%s'\n", $alias, $id);
         }
+
+        return sprintf("    %s:\n        alias: %s\n        public: false", $alias, $id);
     }
 
     /**
diff --git a/vendor/symfony/dependency-injection/Extension/ExtensionInterface.php b/vendor/symfony/dependency-injection/Extension/ExtensionInterface.php
index 424f020..1fd1baa 100644
--- a/vendor/symfony/dependency-injection/Extension/ExtensionInterface.php
+++ b/vendor/symfony/dependency-injection/Extension/ExtensionInterface.php
@@ -17,8 +17,6 @@
  * ExtensionInterface is the interface implemented by container extension classes.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface ExtensionInterface
 {
@@ -29,8 +27,6 @@
      * @param ContainerBuilder $container A ContainerBuilder instance
      *
      * @throws \InvalidArgumentException When provided tag is not defined in this extension
-     *
-     * @api
      */
     public function load(array $config, ContainerBuilder $container);
 
@@ -38,8 +34,6 @@ public function load(array $config, ContainerBuilder $container);
      * Returns the namespace to be used for this extension (XML namespace).
      *
      * @return string The XML namespace
-     *
-     * @api
      */
     public function getNamespace();
 
@@ -47,8 +41,6 @@ public function getNamespace();
      * Returns the base path for the XSD files.
      *
      * @return string The XSD base path
-     *
-     * @api
      */
     public function getXsdValidationBasePath();
 
@@ -58,8 +50,6 @@ public function getXsdValidationBasePath();
      * This alias is also the mandatory prefix to use when using YAML.
      *
      * @return string The alias
-     *
-     * @api
      */
     public function getAlias();
 }
diff --git a/vendor/symfony/dependency-injection/Parameter.php b/vendor/symfony/dependency-injection/Parameter.php
index 7ba8c3a..5431ed8 100644
--- a/vendor/symfony/dependency-injection/Parameter.php
+++ b/vendor/symfony/dependency-injection/Parameter.php
@@ -15,8 +15,6 @@
  * Parameter represents a parameter reference.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Parameter
 {
diff --git a/vendor/symfony/dependency-injection/ParameterBag/FrozenParameterBag.php b/vendor/symfony/dependency-injection/ParameterBag/FrozenParameterBag.php
index 3ea6d96..d9fe9ec 100644
--- a/vendor/symfony/dependency-injection/ParameterBag/FrozenParameterBag.php
+++ b/vendor/symfony/dependency-injection/ParameterBag/FrozenParameterBag.php
@@ -17,8 +17,6 @@
  * Holds read-only parameters.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class FrozenParameterBag extends ParameterBag
 {
@@ -31,8 +29,6 @@ class FrozenParameterBag extends ParameterBag
      * This is always the case when used internally.
      *
      * @param array $parameters An array of parameters
-     *
-     * @api
      */
     public function __construct(array $parameters = array())
     {
@@ -42,8 +38,6 @@ public function __construct(array $parameters = array())
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function clear()
     {
@@ -52,8 +46,6 @@ public function clear()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function add(array $parameters)
     {
@@ -62,8 +54,6 @@ public function add(array $parameters)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function set($name, $value)
     {
@@ -72,8 +62,6 @@ public function set($name, $value)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function remove($name)
     {
diff --git a/vendor/symfony/dependency-injection/ParameterBag/ParameterBag.php b/vendor/symfony/dependency-injection/ParameterBag/ParameterBag.php
index e4f4da1..64a7789 100644
--- a/vendor/symfony/dependency-injection/ParameterBag/ParameterBag.php
+++ b/vendor/symfony/dependency-injection/ParameterBag/ParameterBag.php
@@ -19,8 +19,6 @@
  * Holds parameters.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class ParameterBag implements ParameterBagInterface
 {
@@ -31,8 +29,6 @@ class ParameterBag implements ParameterBagInterface
      * Constructor.
      *
      * @param array $parameters An array of parameters
-     *
-     * @api
      */
     public function __construct(array $parameters = array())
     {
@@ -41,8 +37,6 @@ public function __construct(array $parameters = array())
 
     /**
      * Clears all parameters.
-     *
-     * @api
      */
     public function clear()
     {
@@ -53,8 +47,6 @@ public function clear()
      * Adds parameters to the service container parameters.
      *
      * @param array $parameters An array of parameters
-     *
-     * @api
      */
     public function add(array $parameters)
     {
@@ -67,8 +59,6 @@ public function add(array $parameters)
      * Gets the service container parameters.
      *
      * @return array An array of parameters
-     *
-     * @api
      */
     public function all()
     {
@@ -83,8 +73,6 @@ public function all()
      * @return mixed The parameter value
      *
      * @throws ParameterNotFoundException if the parameter is not defined
-     *
-     * @api
      */
     public function get($name)
     {
@@ -114,8 +102,6 @@ public function get($name)
      *
      * @param string $name  The parameter name
      * @param mixed  $value The parameter value
-     *
-     * @api
      */
     public function set($name, $value)
     {
@@ -128,8 +114,6 @@ public function set($name, $value)
      * @param string $name The parameter name
      *
      * @return bool true if the parameter name is defined, false otherwise
-     *
-     * @api
      */
     public function has($name)
     {
@@ -140,8 +124,6 @@ public function has($name)
      * Removes a parameter.
      *
      * @param string $name The parameter name
-     *
-     * @api
      */
     public function remove($name)
     {
diff --git a/vendor/symfony/dependency-injection/ParameterBag/ParameterBagInterface.php b/vendor/symfony/dependency-injection/ParameterBag/ParameterBagInterface.php
index ead76d7..3291b37 100644
--- a/vendor/symfony/dependency-injection/ParameterBag/ParameterBagInterface.php
+++ b/vendor/symfony/dependency-injection/ParameterBag/ParameterBagInterface.php
@@ -18,8 +18,6 @@
  * ParameterBagInterface.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface ParameterBagInterface
 {
@@ -27,8 +25,6 @@
      * Clears all parameters.
      *
      * @throws LogicException if the ParameterBagInterface can not be cleared
-     *
-     * @api
      */
     public function clear();
 
@@ -38,8 +34,6 @@ public function clear();
      * @param array $parameters An array of parameters
      *
      * @throws LogicException if the parameter can not be added
-     *
-     * @api
      */
     public function add(array $parameters);
 
@@ -47,8 +41,6 @@ public function add(array $parameters);
      * Gets the service container parameters.
      *
      * @return array An array of parameters
-     *
-     * @api
      */
     public function all();
 
@@ -60,8 +52,6 @@ public function all();
      * @return mixed The parameter value
      *
      * @throws ParameterNotFoundException if the parameter is not defined
-     *
-     * @api
      */
     public function get($name);
 
@@ -72,8 +62,6 @@ public function get($name);
      * @param mixed  $value The parameter value
      *
      * @throws LogicException if the parameter can not be set
-     *
-     * @api
      */
     public function set($name, $value);
 
@@ -83,8 +71,6 @@ public function set($name, $value);
      * @param string $name The parameter name
      *
      * @return bool true if the parameter name is defined, false otherwise
-     *
-     * @api
      */
     public function has($name);
 
diff --git a/vendor/symfony/dependency-injection/Reference.php b/vendor/symfony/dependency-injection/Reference.php
index 8808488..6a48249 100644
--- a/vendor/symfony/dependency-injection/Reference.php
+++ b/vendor/symfony/dependency-injection/Reference.php
@@ -15,8 +15,6 @@
  * Reference represents a service reference.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Reference
 {
diff --git a/vendor/symfony/dependency-injection/Scope.php b/vendor/symfony/dependency-injection/Scope.php
index 161229e..737fe26 100644
--- a/vendor/symfony/dependency-injection/Scope.php
+++ b/vendor/symfony/dependency-injection/Scope.php
@@ -15,34 +15,23 @@
  * Scope class.
  *
  * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- *
- * @api
  */
 class Scope implements ScopeInterface
 {
     private $name;
     private $parentName;
 
-    /**
-     * @api
-     */
     public function __construct($name, $parentName = ContainerInterface::SCOPE_CONTAINER)
     {
         $this->name = $name;
         $this->parentName = $parentName;
     }
 
-    /**
-     * @api
-     */
     public function getName()
     {
         return $this->name;
     }
 
-    /**
-     * @api
-     */
     public function getParentName()
     {
         return $this->parentName;
diff --git a/vendor/symfony/dependency-injection/ScopeInterface.php b/vendor/symfony/dependency-injection/ScopeInterface.php
index 81ac67c..ea55165 100644
--- a/vendor/symfony/dependency-injection/ScopeInterface.php
+++ b/vendor/symfony/dependency-injection/ScopeInterface.php
@@ -15,18 +15,10 @@
  * Scope Interface.
  *
  * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- *
- * @api
  */
 interface ScopeInterface
 {
-    /**
-     * @api
-     */
     public function getName();
 
-    /**
-     * @api
-     */
     public function getParentName();
 }
diff --git a/vendor/symfony/dependency-injection/TaggedContainerInterface.php b/vendor/symfony/dependency-injection/TaggedContainerInterface.php
index 3b48817..90b297f 100644
--- a/vendor/symfony/dependency-injection/TaggedContainerInterface.php
+++ b/vendor/symfony/dependency-injection/TaggedContainerInterface.php
@@ -15,8 +15,6 @@
  * TaggedContainerInterface is the interface implemented when a container knows how to deals with tags.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface TaggedContainerInterface extends ContainerInterface
 {
@@ -26,8 +24,6 @@
      * @param string $name The tag name
      *
      * @return array An array of tags
-     *
-     * @api
      */
     public function findTaggedServiceIds($name);
 }
diff --git a/vendor/symfony/dependency-injection/composer.json b/vendor/symfony/dependency-injection/composer.json
index bbfed43..87ea6fd 100644
--- a/vendor/symfony/dependency-injection/composer.json
+++ b/vendor/symfony/dependency-injection/composer.json
@@ -19,7 +19,6 @@
         "php": ">=5.3.9"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
         "symfony/yaml": "~2.1",
         "symfony/config": "~2.2",
         "symfony/expression-language": "~2.6"
diff --git a/vendor/symfony/dom-crawler/Crawler.php b/vendor/symfony/dom-crawler/Crawler.php
index aa39d7c..94e0a21 100644
--- a/vendor/symfony/dom-crawler/Crawler.php
+++ b/vendor/symfony/dom-crawler/Crawler.php
@@ -17,8 +17,6 @@
  * Crawler eases navigation of a list of \DOMElement objects.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Crawler extends \SplObjectStorage
 {
@@ -48,8 +46,6 @@ class Crawler extends \SplObjectStorage
      * @param mixed  $node       A Node to use as the base for the crawling
      * @param string $currentUri The current URI
      * @param string $baseHref   The base href value
-     *
-     * @api
      */
     public function __construct($node = null, $currentUri = null, $baseHref = null)
     {
@@ -61,8 +57,6 @@ public function __construct($node = null, $currentUri = null, $baseHref = null)
 
     /**
      * Removes all the nodes.
-     *
-     * @api
      */
     public function clear()
     {
@@ -78,8 +72,6 @@ public function clear()
      * @param \DOMNodeList|\DOMNode|array|string|null $node A node
      *
      * @throws \InvalidArgumentException When node is not the expected type.
-     *
-     * @api
      */
     public function add($node)
     {
@@ -155,8 +147,6 @@ public function addContent($content, $type = null)
      *
      * @param string $content The HTML content
      * @param string $charset The charset
-     *
-     * @api
      */
     public function addHtmlContent($content, $charset = 'UTF-8')
     {
@@ -239,8 +229,6 @@ function ($m) {
      *
      * @param string $content The XML content
      * @param string $charset The charset
-     *
-     * @api
      */
     public function addXmlContent($content, $charset = 'UTF-8')
     {
@@ -269,8 +257,6 @@ public function addXmlContent($content, $charset = 'UTF-8')
      * Adds a \DOMDocument to the list of nodes.
      *
      * @param \DOMDocument $dom A \DOMDocument instance
-     *
-     * @api
      */
     public function addDocument(\DOMDocument $dom)
     {
@@ -283,8 +269,6 @@ public function addDocument(\DOMDocument $dom)
      * Adds a \DOMNodeList to the list of nodes.
      *
      * @param \DOMNodeList $nodes A \DOMNodeList instance
-     *
-     * @api
      */
     public function addNodeList(\DOMNodeList $nodes)
     {
@@ -299,8 +283,6 @@ public function addNodeList(\DOMNodeList $nodes)
      * Adds an array of \DOMNode instances to the list of nodes.
      *
      * @param \DOMNode[] $nodes An array of \DOMNode instances
-     *
-     * @api
      */
     public function addNodes(array $nodes)
     {
@@ -313,8 +295,6 @@ public function addNodes(array $nodes)
      * Adds a \DOMNode instance to the list of nodes.
      *
      * @param \DOMNode $node A \DOMNode instance
-     *
-     * @api
      */
     public function addNode(\DOMNode $node)
     {
@@ -325,24 +305,33 @@ public function addNode(\DOMNode $node)
         }
     }
 
+    // Serializing and unserializing a crawler creates DOM objects in a corrupted state. DOM elements are not properly serializable.
+    public function unserialize($serialized)
+    {
+        throw new \BadMethodCallException('A Crawler cannot be serialized.');
+    }
+
+    public function serialize()
+    {
+        throw new \BadMethodCallException('A Crawler cannot be serialized.');
+    }
+
     /**
      * Returns a node given its position in the node list.
      *
      * @param int $position The position
      *
      * @return Crawler A new instance of the Crawler with the selected node, or an empty Crawler if it does not exist.
-     *
-     * @api
      */
     public function eq($position)
     {
         foreach ($this as $i => $node) {
             if ($i == $position) {
-                return new static($node, $this->uri, $this->baseHref);
+                return $this->createSubCrawler($node);
             }
         }
 
-        return new static(null, $this->uri, $this->baseHref);
+        return $this->createSubCrawler(null);
     }
 
     /**
@@ -360,14 +349,12 @@ public function eq($position)
      * @param \Closure $closure An anonymous function
      *
      * @return array An array of values returned by the anonymous function
-     *
-     * @api
      */
     public function each(\Closure $closure)
     {
         $data = array();
         foreach ($this as $i => $node) {
-            $data[] = $closure(new static($node, $this->uri, $this->baseHref), $i);
+            $data[] = $closure($this->createSubCrawler($node), $i);
         }
 
         return $data;
@@ -383,7 +370,7 @@ public function each(\Closure $closure)
      */
     public function slice($offset = 0, $length = -1)
     {
-        return new static(iterator_to_array(new \LimitIterator($this, $offset, $length)), $this->uri);
+        return $this->createSubCrawler(iterator_to_array(new \LimitIterator($this, $offset, $length)));
     }
 
     /**
@@ -394,27 +381,23 @@ public function slice($offset = 0, $length = -1)
      * @param \Closure $closure An anonymous function
      *
      * @return Crawler A Crawler instance with the selected nodes.
-     *
-     * @api
      */
     public function reduce(\Closure $closure)
     {
         $nodes = array();
         foreach ($this as $i => $node) {
-            if (false !== $closure(new static($node, $this->uri, $this->baseHref), $i)) {
+            if (false !== $closure($this->createSubCrawler($node), $i)) {
                 $nodes[] = $node;
             }
         }
 
-        return new static($nodes, $this->uri, $this->baseHref);
+        return $this->createSubCrawler($nodes);
     }
 
     /**
      * Returns the first node of the current selection.
      *
      * @return Crawler A Crawler instance with the first selected node
-     *
-     * @api
      */
     public function first()
     {
@@ -425,8 +408,6 @@ public function first()
      * Returns the last node of the current selection.
      *
      * @return Crawler A Crawler instance with the last selected node
-     *
-     * @api
      */
     public function last()
     {
@@ -439,8 +420,6 @@ public function last()
      * @return Crawler A Crawler instance with the sibling nodes
      *
      * @throws \InvalidArgumentException When current node is empty
-     *
-     * @api
      */
     public function siblings()
     {
@@ -448,7 +427,7 @@ public function siblings()
             throw new \InvalidArgumentException('The current node list is empty.');
         }
 
-        return new static($this->sibling($this->getNode(0)->parentNode->firstChild), $this->uri, $this->baseHref);
+        return $this->createSubCrawler($this->sibling($this->getNode(0)->parentNode->firstChild));
     }
 
     /**
@@ -457,8 +436,6 @@ public function siblings()
      * @return Crawler A Crawler instance with the next sibling nodes
      *
      * @throws \InvalidArgumentException When current node is empty
-     *
-     * @api
      */
     public function nextAll()
     {
@@ -466,7 +443,7 @@ public function nextAll()
             throw new \InvalidArgumentException('The current node list is empty.');
         }
 
-        return new static($this->sibling($this->getNode(0)), $this->uri, $this->baseHref);
+        return $this->createSubCrawler($this->sibling($this->getNode(0)));
     }
 
     /**
@@ -475,8 +452,6 @@ public function nextAll()
      * @return Crawler A Crawler instance with the previous sibling nodes
      *
      * @throws \InvalidArgumentException
-     *
-     * @api
      */
     public function previousAll()
     {
@@ -484,7 +459,7 @@ public function previousAll()
             throw new \InvalidArgumentException('The current node list is empty.');
         }
 
-        return new static($this->sibling($this->getNode(0), 'previousSibling'), $this->uri, $this->baseHref);
+        return $this->createSubCrawler($this->sibling($this->getNode(0), 'previousSibling'));
     }
 
     /**
@@ -493,8 +468,6 @@ public function previousAll()
      * @return Crawler A Crawler instance with the parents nodes of the current selection
      *
      * @throws \InvalidArgumentException When current node is empty
-     *
-     * @api
      */
     public function parents()
     {
@@ -511,7 +484,7 @@ public function parents()
             }
         }
 
-        return new static($nodes, $this->uri, $this->baseHref);
+        return $this->createSubCrawler($nodes);
     }
 
     /**
@@ -520,8 +493,6 @@ public function parents()
      * @return Crawler A Crawler instance with the children nodes
      *
      * @throws \InvalidArgumentException When current node is empty
-     *
-     * @api
      */
     public function children()
     {
@@ -531,7 +502,7 @@ public function children()
 
         $node = $this->getNode(0)->firstChild;
 
-        return new static($node ? $this->sibling($node) : array(), $this->uri, $this->baseHref);
+        return $this->createSubCrawler($node ? $this->sibling($node) : array());
     }
 
     /**
@@ -542,8 +513,6 @@ public function children()
      * @return string|null The attribute value or null if the attribute does not exist
      *
      * @throws \InvalidArgumentException When current node is empty
-     *
-     * @api
      */
     public function attr($attribute)
     {
@@ -578,8 +547,6 @@ public function nodeName()
      * @return string The node value
      *
      * @throws \InvalidArgumentException When current node is empty
-     *
-     * @api
      */
     public function text()
     {
@@ -623,8 +590,6 @@ public function html()
      * @param array $attributes An array of attributes
      *
      * @return array An array of extracted values
-     *
-     * @api
      */
     public function extract($attributes)
     {
@@ -659,8 +624,6 @@ public function extract($attributes)
      * @param string $xpath An XPath expression
      *
      * @return Crawler A new instance of Crawler with the filtered list of nodes
-     *
-     * @api
      */
     public function filterXPath($xpath)
     {
@@ -668,7 +631,7 @@ public function filterXPath($xpath)
 
         // If we dropped all expressions in the XPath while preparing it, there would be no match
         if ('' === $xpath) {
-            return new static(null, $this->uri, $this->baseHref);
+            return $this->createSubCrawler(null);
         }
 
         return $this->filterRelativeXPath($xpath);
@@ -684,8 +647,6 @@ public function filterXPath($xpath)
      * @return Crawler A new instance of Crawler with the filtered list of nodes
      *
      * @throws \RuntimeException if the CssSelector Component is not available
-     *
-     * @api
      */
     public function filter($selector)
     {
@@ -703,8 +664,6 @@ public function filter($selector)
      * @param string $value The link text
      *
      * @return Crawler A new instance of Crawler with the filtered list of nodes
-     *
-     * @api
      */
     public function selectLink($value)
     {
@@ -720,8 +679,6 @@ public function selectLink($value)
      * @param string $value The button text
      *
      * @return Crawler A new instance of Crawler with the filtered list of nodes
-     *
-     * @api
      */
     public function selectButton($value)
     {
@@ -741,8 +698,6 @@ public function selectButton($value)
      * @return Link A Link instance
      *
      * @throws \InvalidArgumentException If the current node list is empty
-     *
-     * @api
      */
     public function link($method = 'get')
     {
@@ -759,8 +714,6 @@ public function link($method = 'get')
      * Returns an array of Link objects for the nodes in the list.
      *
      * @return Link[] An array of Link instances
-     *
-     * @api
      */
     public function links()
     {
@@ -781,8 +734,6 @@ public function links()
      * @return Form A Form instance
      *
      * @throws \InvalidArgumentException If the current node list is empty
-     *
-     * @api
      */
     public function form(array $values = null, $method = null)
     {
@@ -878,7 +829,7 @@ private function filterRelativeXPath($xpath)
     {
         $prefixes = $this->findNamespacePrefixes($xpath);
 
-        $crawler = new static(null, $this->uri, $this->baseHref);
+        $crawler = $this->createSubCrawler(null);
 
         foreach ($this as $node) {
             $domxpath = $this->createDOMXPath($node->ownerDocument, $prefixes);
@@ -1048,4 +999,18 @@ private function findNamespacePrefixes($xpath)
 
         return array();
     }
+
+    /**
+     * Creates a crawler for some subnodes.
+     *
+     * @param \DOMElement|\DOMElement[]|\DOMNodeList|null $nodes
+     *
+     * @return static
+     */
+    private function createSubCrawler($nodes)
+    {
+        $crawler = new static($nodes, $this->uri, $this->baseHref);
+
+        return $crawler;
+    }
 }
diff --git a/vendor/symfony/dom-crawler/Field/ChoiceFormField.php b/vendor/symfony/dom-crawler/Field/ChoiceFormField.php
index ae7f4d1..fcf510c 100644
--- a/vendor/symfony/dom-crawler/Field/ChoiceFormField.php
+++ b/vendor/symfony/dom-crawler/Field/ChoiceFormField.php
@@ -17,8 +17,6 @@
  * It is constructed from a HTML select tag, or a HTML checkbox, or radio inputs.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class ChoiceFormField extends FormField
 {
@@ -74,8 +72,6 @@ public function isDisabled()
      * Sets the value of the field.
      *
      * @param string $value The value of the field
-     *
-     * @api
      */
     public function select($value)
     {
@@ -86,8 +82,6 @@ public function select($value)
      * Ticks a checkbox.
      *
      * @throws \LogicException When the type provided is not correct
-     *
-     * @api
      */
     public function tick()
     {
@@ -102,8 +96,6 @@ public function tick()
      * Ticks a checkbox.
      *
      * @throws \LogicException When the type provided is not correct
-     *
-     * @api
      */
     public function untick()
     {
diff --git a/vendor/symfony/dom-crawler/Field/FileFormField.php b/vendor/symfony/dom-crawler/Field/FileFormField.php
index c3423b2..0e0f943 100644
--- a/vendor/symfony/dom-crawler/Field/FileFormField.php
+++ b/vendor/symfony/dom-crawler/Field/FileFormField.php
@@ -15,8 +15,6 @@
  * FileFormField represents a file form field (an HTML file input tag).
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class FileFormField extends FormField
 {
@@ -41,8 +39,6 @@ public function setErrorCode($error)
      * Sets the value of the field.
      *
      * @param string $value The value of the field
-     *
-     * @api
      */
     public function upload($value)
     {
diff --git a/vendor/symfony/dom-crawler/Field/FormField.php b/vendor/symfony/dom-crawler/Field/FormField.php
index 5d70292..a6b33de 100644
--- a/vendor/symfony/dom-crawler/Field/FormField.php
+++ b/vendor/symfony/dom-crawler/Field/FormField.php
@@ -81,8 +81,6 @@ public function getValue()
      * Sets the value of the field.
      *
      * @param string $value The value of the field
-     *
-     * @api
      */
     public function setValue($value)
     {
diff --git a/vendor/symfony/dom-crawler/Field/InputFormField.php b/vendor/symfony/dom-crawler/Field/InputFormField.php
index b9bd0a4..090913e 100644
--- a/vendor/symfony/dom-crawler/Field/InputFormField.php
+++ b/vendor/symfony/dom-crawler/Field/InputFormField.php
@@ -18,8 +18,6 @@
  * specialized classes (cf. FileFormField and ChoiceFormField).
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class InputFormField extends FormField
 {
diff --git a/vendor/symfony/dom-crawler/Field/TextareaFormField.php b/vendor/symfony/dom-crawler/Field/TextareaFormField.php
index a14e707..15526e1 100644
--- a/vendor/symfony/dom-crawler/Field/TextareaFormField.php
+++ b/vendor/symfony/dom-crawler/Field/TextareaFormField.php
@@ -15,8 +15,6 @@
  * TextareaFormField represents a textarea form field (an HTML textarea tag).
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class TextareaFormField extends FormField
 {
diff --git a/vendor/symfony/dom-crawler/Form.php b/vendor/symfony/dom-crawler/Form.php
index d95fb07..0c7a3b2 100644
--- a/vendor/symfony/dom-crawler/Form.php
+++ b/vendor/symfony/dom-crawler/Form.php
@@ -18,8 +18,6 @@
  * Form represents an HTML form.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Form extends Link implements \ArrayAccess
 {
@@ -47,8 +45,6 @@ class Form extends Link implements \ArrayAccess
      * @param string      $baseHref   The URI of the <base> used for relative links, but not for empty action
      *
      * @throws \LogicException if the node is not a button inside a form tag
-     *
-     * @api
      */
     public function __construct(\DOMElement $node, $currentUri, $method = null, $baseHref = null)
     {
@@ -74,8 +70,6 @@ public function getFormNode()
      * @param array $values An array of field values
      *
      * @return Form
-     *
-     * @api
      */
     public function setValues(array $values)
     {
@@ -92,8 +86,6 @@ public function setValues(array $values)
      * The returned array does not include file fields (@see getFiles).
      *
      * @return array An array of field values.
-     *
-     * @api
      */
     public function getValues()
     {
@@ -115,8 +107,6 @@ public function getValues()
      * Gets the file field values.
      *
      * @return array An array of file field values.
-     *
-     * @api
      */
     public function getFiles()
     {
@@ -146,8 +136,6 @@ public function getFiles()
      * (like foo[bar] to arrays) like PHP does.
      *
      * @return array An array of field values.
-     *
-     * @api
      */
     public function getPhpValues()
     {
@@ -171,8 +159,6 @@ public function getPhpValues()
      * (like foo[bar] to arrays) like PHP does.
      *
      * @return array An array of field values.
-     *
-     * @api
      */
     public function getPhpFiles()
     {
@@ -197,8 +183,6 @@ public function getPhpFiles()
      * browser behavior.
      *
      * @return string The URI
-     *
-     * @api
      */
     public function getUri()
     {
@@ -232,8 +216,6 @@ protected function getRawUri()
      * If no method is defined in the form, GET is returned.
      *
      * @return string The method
-     *
-     * @api
      */
     public function getMethod()
     {
@@ -250,8 +232,6 @@ public function getMethod()
      * @param string $name The field name
      *
      * @return bool true if the field exists, false otherwise
-     *
-     * @api
      */
     public function has($name)
     {
@@ -264,8 +244,6 @@ public function has($name)
      * @param string $name The field name
      *
      * @throws \InvalidArgumentException when the name is malformed
-     *
-     * @api
      */
     public function remove($name)
     {
@@ -280,8 +258,6 @@ public function remove($name)
      * @return FormField The field instance
      *
      * @throws \InvalidArgumentException When field is not present in this form
-     *
-     * @api
      */
     public function get($name)
     {
@@ -292,8 +268,6 @@ public function get($name)
      * Sets a named field.
      *
      * @param FormField $field The field
-     *
-     * @api
      */
     public function set(FormField $field)
     {
@@ -304,8 +278,6 @@ public function set(FormField $field)
      * Gets all fields.
      *
      * @return FormField[] An array of fields
-     *
-     * @api
      */
     public function all()
     {
diff --git a/vendor/symfony/dom-crawler/Link.php b/vendor/symfony/dom-crawler/Link.php
index a81db36..ede0991 100644
--- a/vendor/symfony/dom-crawler/Link.php
+++ b/vendor/symfony/dom-crawler/Link.php
@@ -15,8 +15,6 @@
  * Link represents an HTML link (an HTML a, area or link tag).
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Link
 {
@@ -43,8 +41,6 @@ class Link
      * @param string      $method     The method to use for the link (get by default)
      *
      * @throws \InvalidArgumentException if the node is not a link
-     *
-     * @api
      */
     public function __construct(\DOMElement $node, $currentUri, $method = 'GET')
     {
@@ -71,8 +67,6 @@ public function getNode()
      * Gets the method associated with this link.
      *
      * @return string The method
-     *
-     * @api
      */
     public function getMethod()
     {
@@ -83,8 +77,6 @@ public function getMethod()
      * Gets the URI associated with this link.
      *
      * @return string The URI
-     *
-     * @api
      */
     public function getUri()
     {
diff --git a/vendor/symfony/dom-crawler/composer.json b/vendor/symfony/dom-crawler/composer.json
index f3dc8c9..f8033c5 100644
--- a/vendor/symfony/dom-crawler/composer.json
+++ b/vendor/symfony/dom-crawler/composer.json
@@ -19,7 +19,6 @@
         "php": ">=5.3.9"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
         "symfony/css-selector": "~2.3"
     },
     "suggest": {
diff --git a/vendor/symfony/event-dispatcher/Event.php b/vendor/symfony/event-dispatcher/Event.php
index 048bf0a..4a56349 100644
--- a/vendor/symfony/event-dispatcher/Event.php
+++ b/vendor/symfony/event-dispatcher/Event.php
@@ -24,8 +24,6 @@
  * @author Jonathan Wage <jonwage@gmail.com>
  * @author Roman Borschel <roman@code-factory.org>
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Event
 {
@@ -50,8 +48,6 @@ class Event
      * @see Event::stopPropagation()
      *
      * @return bool Whether propagation was already stopped for this event.
-     *
-     * @api
      */
     public function isPropagationStopped()
     {
@@ -64,8 +60,6 @@ public function isPropagationStopped()
      * If multiple event listeners are connected to the same event, no
      * further event listener will be triggered once any trigger calls
      * stopPropagation().
-     *
-     * @api
      */
     public function stopPropagation()
     {
@@ -78,8 +72,6 @@ public function stopPropagation()
      * @param EventDispatcherInterface $dispatcher
      *
      * @deprecated since version 2.4, to be removed in 3.0. The event dispatcher is passed to the listener call.
-     *
-     * @api
      */
     public function setDispatcher(EventDispatcherInterface $dispatcher)
     {
@@ -92,8 +84,6 @@ public function setDispatcher(EventDispatcherInterface $dispatcher)
      * @return EventDispatcherInterface
      *
      * @deprecated since version 2.4, to be removed in 3.0. The event dispatcher is passed to the listener call.
-     *
-     * @api
      */
     public function getDispatcher()
     {
@@ -108,8 +98,6 @@ public function getDispatcher()
      * @return string
      *
      * @deprecated since version 2.4, to be removed in 3.0. The event name is passed to the listener call.
-     *
-     * @api
      */
     public function getName()
     {
@@ -124,8 +112,6 @@ public function getName()
      * @param string $name The event name.
      *
      * @deprecated since version 2.4, to be removed in 3.0. The event name is passed to the listener call.
-     *
-     * @api
      */
     public function setName($name)
     {
diff --git a/vendor/symfony/event-dispatcher/EventDispatcher.php b/vendor/symfony/event-dispatcher/EventDispatcher.php
index dc1b3da..b54d07b 100644
--- a/vendor/symfony/event-dispatcher/EventDispatcher.php
+++ b/vendor/symfony/event-dispatcher/EventDispatcher.php
@@ -24,8 +24,6 @@
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Jordi Boggiano <j.boggiano@seld.be>
  * @author Jordan Alliot <jordan.alliot@gmail.com>
- *
- * @api
  */
 class EventDispatcher implements EventDispatcherInterface
 {
diff --git a/vendor/symfony/event-dispatcher/EventDispatcherInterface.php b/vendor/symfony/event-dispatcher/EventDispatcherInterface.php
index 9d9fc4d..a9bdd2c 100644
--- a/vendor/symfony/event-dispatcher/EventDispatcherInterface.php
+++ b/vendor/symfony/event-dispatcher/EventDispatcherInterface.php
@@ -17,8 +17,6 @@
  * manager.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 interface EventDispatcherInterface
 {
@@ -32,8 +30,6 @@
      *                          If not supplied, an empty Event instance is created.
      *
      * @return Event
-     *
-     * @api
      */
     public function dispatch($eventName, Event $event = null);
 
@@ -44,8 +40,6 @@ public function dispatch($eventName, Event $event = null);
      * @param callable $listener  The listener
      * @param int      $priority  The higher this value, the earlier an event
      *                            listener will be triggered in the chain (defaults to 0)
-     *
-     * @api
      */
     public function addListener($eventName, $listener, $priority = 0);
 
@@ -56,8 +50,6 @@ public function addListener($eventName, $listener, $priority = 0);
      * interested in and added as a listener for these events.
      *
      * @param EventSubscriberInterface $subscriber The subscriber.
-     *
-     * @api
      */
     public function addSubscriber(EventSubscriberInterface $subscriber);
 
diff --git a/vendor/symfony/event-dispatcher/EventSubscriberInterface.php b/vendor/symfony/event-dispatcher/EventSubscriberInterface.php
index ff7e305..ec53e54 100644
--- a/vendor/symfony/event-dispatcher/EventSubscriberInterface.php
+++ b/vendor/symfony/event-dispatcher/EventSubscriberInterface.php
@@ -21,8 +21,6 @@
  * @author Jonathan Wage <jonwage@gmail.com>
  * @author Roman Borschel <roman@code-factory.org>
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 interface EventSubscriberInterface
 {
@@ -43,8 +41,6 @@
      *  * array('eventName' => array(array('methodName1', $priority), array('methodName2'))
      *
      * @return array The event names to listen to
-     *
-     * @api
      */
     public static function getSubscribedEvents();
 }
diff --git a/vendor/symfony/event-dispatcher/composer.json b/vendor/symfony/event-dispatcher/composer.json
index d705862..8a6a750 100644
--- a/vendor/symfony/event-dispatcher/composer.json
+++ b/vendor/symfony/event-dispatcher/composer.json
@@ -19,7 +19,6 @@
         "php": ">=5.3.9"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
         "symfony/dependency-injection": "~2.6",
         "symfony/expression-language": "~2.6",
         "symfony/config": "~2.0,>=2.0.5",
diff --git a/vendor/symfony/http-foundation/Cookie.php b/vendor/symfony/http-foundation/Cookie.php
index 466d020..061703d 100644
--- a/vendor/symfony/http-foundation/Cookie.php
+++ b/vendor/symfony/http-foundation/Cookie.php
@@ -15,8 +15,6 @@
  * Represents a cookie.
  *
  * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- *
- * @api
  */
 class Cookie
 {
@@ -40,8 +38,6 @@ class Cookie
      * @param bool                 $httpOnly Whether the cookie will be made accessible only through the HTTP protocol
      *
      * @throws \InvalidArgumentException
-     *
-     * @api
      */
     public function __construct($name, $value = null, $expire = 0, $path = '/', $domain = null, $secure = false, $httpOnly = true)
     {
@@ -116,8 +112,6 @@ public function __toString()
      * Gets the name of the cookie.
      *
      * @return string
-     *
-     * @api
      */
     public function getName()
     {
@@ -128,8 +122,6 @@ public function getName()
      * Gets the value of the cookie.
      *
      * @return string
-     *
-     * @api
      */
     public function getValue()
     {
@@ -140,8 +132,6 @@ public function getValue()
      * Gets the domain that the cookie is available to.
      *
      * @return string
-     *
-     * @api
      */
     public function getDomain()
     {
@@ -152,8 +142,6 @@ public function getDomain()
      * Gets the time the cookie expires.
      *
      * @return int
-     *
-     * @api
      */
     public function getExpiresTime()
     {
@@ -164,8 +152,6 @@ public function getExpiresTime()
      * Gets the path on the server in which the cookie will be available on.
      *
      * @return string
-     *
-     * @api
      */
     public function getPath()
     {
@@ -176,8 +162,6 @@ public function getPath()
      * Checks whether the cookie should only be transmitted over a secure HTTPS connection from the client.
      *
      * @return bool
-     *
-     * @api
      */
     public function isSecure()
     {
@@ -188,8 +172,6 @@ public function isSecure()
      * Checks whether the cookie will be made accessible only through the HTTP protocol.
      *
      * @return bool
-     *
-     * @api
      */
     public function isHttpOnly()
     {
@@ -200,8 +182,6 @@ public function isHttpOnly()
      * Whether this cookie is about to be cleared.
      *
      * @return bool
-     *
-     * @api
      */
     public function isCleared()
     {
diff --git a/vendor/symfony/http-foundation/File/File.php b/vendor/symfony/http-foundation/File/File.php
index b575c85..f1b28b4 100644
--- a/vendor/symfony/http-foundation/File/File.php
+++ b/vendor/symfony/http-foundation/File/File.php
@@ -20,8 +20,6 @@
  * A file in the file system.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class File extends \SplFileInfo
 {
@@ -32,8 +30,6 @@ class File extends \SplFileInfo
      * @param bool   $checkPath Whether to check the path or not
      *
      * @throws FileNotFoundException If the given path is not a file
-     *
-     * @api
      */
     public function __construct($path, $checkPath = true)
     {
@@ -54,8 +50,6 @@ public function __construct($path, $checkPath = true)
      *
      * @return string|null The guessed extension or null if it cannot be guessed
      *
-     * @api
-     *
      * @see ExtensionGuesser
      * @see getMimeType()
      */
@@ -77,8 +71,6 @@ public function guessExtension()
      * @return string|null The guessed mime type (i.e. "application/pdf")
      *
      * @see MimeTypeGuesser
-     *
-     * @api
      */
     public function getMimeType()
     {
@@ -96,8 +88,6 @@ public function getMimeType()
      * @return File A File object representing the new file
      *
      * @throws FileException if the target file could not be created
-     *
-     * @api
      */
     public function move($directory, $name = null)
     {
diff --git a/vendor/symfony/http-foundation/File/UploadedFile.php b/vendor/symfony/http-foundation/File/UploadedFile.php
index 0f3f802..6b869e0 100644
--- a/vendor/symfony/http-foundation/File/UploadedFile.php
+++ b/vendor/symfony/http-foundation/File/UploadedFile.php
@@ -21,8 +21,6 @@
  * @author Bernhard Schussek <bschussek@gmail.com>
  * @author Florian Eckerstorfer <florian@eckerstorfer.org>
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class UploadedFile extends File
 {
@@ -86,8 +84,6 @@ class UploadedFile extends File
      *
      * @throws FileException         If file_uploads is disabled
      * @throws FileNotFoundException If the file does not exist
-     *
-     * @api
      */
     public function __construct($path, $originalName, $mimeType = null, $size = null, $error = null, $test = false)
     {
@@ -107,8 +103,6 @@ public function __construct($path, $originalName, $mimeType = null, $size = null
      * Then it should not be considered as a safe value.
      *
      * @return string|null The original name
-     *
-     * @api
      */
     public function getClientOriginalName()
     {
@@ -140,8 +134,6 @@ public function getClientOriginalExtension()
      * @return string|null The mime type
      *
      * @see getMimeType()
-     *
-     * @api
      */
     public function getClientMimeType()
     {
@@ -180,8 +172,6 @@ public function guessClientExtension()
      * Then it should not be considered as a safe value.
      *
      * @return int|null The file size
-     *
-     * @api
      */
     public function getClientSize()
     {
@@ -195,8 +185,6 @@ public function getClientSize()
      * Otherwise one of the other UPLOAD_ERR_XXX constants is returned.
      *
      * @return int The upload error
-     *
-     * @api
      */
     public function getError()
     {
@@ -207,8 +195,6 @@ public function getError()
      * Returns whether the file was uploaded successfully.
      *
      * @return bool True if the file has been uploaded with HTTP and no error occurred.
-     *
-     * @api
      */
     public function isValid()
     {
@@ -226,8 +212,6 @@ public function isValid()
      * @return File A File object representing the new file
      *
      * @throws FileException if, for any reason, the file could not have been moved
-     *
-     * @api
      */
     public function move($directory, $name = null)
     {
diff --git a/vendor/symfony/http-foundation/FileBag.php b/vendor/symfony/http-foundation/FileBag.php
index 43b8af3..197eab4 100644
--- a/vendor/symfony/http-foundation/FileBag.php
+++ b/vendor/symfony/http-foundation/FileBag.php
@@ -18,8 +18,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Bulat Shakirzyanov <mallluhuct@gmail.com>
- *
- * @api
  */
 class FileBag extends ParameterBag
 {
@@ -29,8 +27,6 @@ class FileBag extends ParameterBag
      * Constructor.
      *
      * @param array $parameters An array of HTTP files
-     *
-     * @api
      */
     public function __construct(array $parameters = array())
     {
@@ -39,8 +35,6 @@ public function __construct(array $parameters = array())
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function replace(array $files = array())
     {
@@ -50,8 +44,6 @@ public function replace(array $files = array())
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function set($key, $value)
     {
@@ -64,8 +56,6 @@ public function set($key, $value)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function add(array $files = array())
     {
diff --git a/vendor/symfony/http-foundation/HeaderBag.php b/vendor/symfony/http-foundation/HeaderBag.php
index d3adffa..dc12000 100644
--- a/vendor/symfony/http-foundation/HeaderBag.php
+++ b/vendor/symfony/http-foundation/HeaderBag.php
@@ -15,8 +15,6 @@
  * HeaderBag is a container for HTTP headers.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class HeaderBag implements \IteratorAggregate, \Countable
 {
@@ -27,8 +25,6 @@ class HeaderBag implements \IteratorAggregate, \Countable
      * Constructor.
      *
      * @param array $headers An array of HTTP headers
-     *
-     * @api
      */
     public function __construct(array $headers = array())
     {
@@ -65,8 +61,6 @@ public function __toString()
      * Returns the headers.
      *
      * @return array An array of headers
-     *
-     * @api
      */
     public function all()
     {
@@ -77,8 +71,6 @@ public function all()
      * Returns the parameter keys.
      *
      * @return array An array of parameter keys
-     *
-     * @api
      */
     public function keys()
     {
@@ -89,8 +81,6 @@ public function keys()
      * Replaces the current HTTP headers by a new set.
      *
      * @param array $headers An array of HTTP headers
-     *
-     * @api
      */
     public function replace(array $headers = array())
     {
@@ -102,8 +92,6 @@ public function replace(array $headers = array())
      * Adds new headers the current HTTP headers set.
      *
      * @param array $headers An array of HTTP headers
-     *
-     * @api
      */
     public function add(array $headers)
     {
@@ -120,8 +108,6 @@ public function add(array $headers)
      * @param bool   $first   Whether to return the first value or all header values
      *
      * @return string|array The first header value if $first is true, an array of values otherwise
-     *
-     * @api
      */
     public function get($key, $default = null, $first = true)
     {
@@ -148,8 +134,6 @@ public function get($key, $default = null, $first = true)
      * @param string       $key     The key
      * @param string|array $values  The value or an array of values
      * @param bool         $replace Whether to replace the actual value or not (true by default)
-     *
-     * @api
      */
     public function set($key, $values, $replace = true)
     {
@@ -174,8 +158,6 @@ public function set($key, $values, $replace = true)
      * @param string $key The HTTP header
      *
      * @return bool true if the parameter exists, false otherwise
-     *
-     * @api
      */
     public function has($key)
     {
@@ -189,8 +171,6 @@ public function has($key)
      * @param string $value The HTTP value
      *
      * @return bool true if the value is contained in the header, false otherwise
-     *
-     * @api
      */
     public function contains($key, $value)
     {
@@ -201,8 +181,6 @@ public function contains($key, $value)
      * Removes a header.
      *
      * @param string $key The HTTP header name
-     *
-     * @api
      */
     public function remove($key)
     {
@@ -224,8 +202,6 @@ public function remove($key)
      * @return null|\DateTime The parsed DateTime or the default value if the header does not exist
      *
      * @throws \RuntimeException When the HTTP header is not parseable
-     *
-     * @api
      */
     public function getDate($key, \DateTime $default = null)
     {
diff --git a/vendor/symfony/http-foundation/IpUtils.php b/vendor/symfony/http-foundation/IpUtils.php
index fb906b6..e08301e 100644
--- a/vendor/symfony/http-foundation/IpUtils.php
+++ b/vendor/symfony/http-foundation/IpUtils.php
@@ -57,18 +57,19 @@ public static function checkIp($requestIp, $ips)
      * @param string $requestIp IPv4 address to check
      * @param string $ip        IPv4 address or subnet in CIDR notation
      *
-     * @return bool Whether the IP is valid
+     * @return bool Whether the request IP matches the IP, or whether the request IP is within the CIDR subnet.
      */
     public static function checkIp4($requestIp, $ip)
     {
         if (false !== strpos($ip, '/')) {
-            if ('0.0.0.0/0' === $ip) {
-                return true;
-            }
-
             list($address, $netmask) = explode('/', $ip, 2);
 
-            if ($netmask < 1 || $netmask > 32) {
+            if ($netmask === '0') {
+                // Ensure IP is valid - using ip2long below implicitly validates, but we need to do it manually here
+                return filter_var($address, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4);
+            }
+
+            if ($netmask < 0 || $netmask > 32) {
                 return false;
             }
         } else {
diff --git a/vendor/symfony/http-foundation/ParameterBag.php b/vendor/symfony/http-foundation/ParameterBag.php
index 6081f3f..ecc0de1 100644
--- a/vendor/symfony/http-foundation/ParameterBag.php
+++ b/vendor/symfony/http-foundation/ParameterBag.php
@@ -15,8 +15,6 @@
  * ParameterBag is a container for key/value pairs.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class ParameterBag implements \IteratorAggregate, \Countable
 {
@@ -31,8 +29,6 @@ class ParameterBag implements \IteratorAggregate, \Countable
      * Constructor.
      *
      * @param array $parameters An array of parameters
-     *
-     * @api
      */
     public function __construct(array $parameters = array())
     {
@@ -43,8 +39,6 @@ public function __construct(array $parameters = array())
      * Returns the parameters.
      *
      * @return array An array of parameters
-     *
-     * @api
      */
     public function all()
     {
@@ -55,8 +49,6 @@ public function all()
      * Returns the parameter keys.
      *
      * @return array An array of parameter keys
-     *
-     * @api
      */
     public function keys()
     {
@@ -67,8 +59,6 @@ public function keys()
      * Replaces the current parameters by a new set.
      *
      * @param array $parameters An array of parameters
-     *
-     * @api
      */
     public function replace(array $parameters = array())
     {
@@ -79,8 +69,6 @@ public function replace(array $parameters = array())
      * Adds parameters.
      *
      * @param array $parameters An array of parameters
-     *
-     * @api
      */
     public function add(array $parameters = array())
     {
@@ -97,8 +85,6 @@ public function add(array $parameters = array())
      * @return mixed
      *
      * @throws \InvalidArgumentException
-     *
-     * @api
      */
     public function get($path, $default = null, $deep = false)
     {
@@ -154,8 +140,6 @@ public function get($path, $default = null, $deep = false)
      *
      * @param string $key   The key
      * @param mixed  $value The value
-     *
-     * @api
      */
     public function set($key, $value)
     {
@@ -168,8 +152,6 @@ public function set($key, $value)
      * @param string $key The key
      *
      * @return bool true if the parameter exists, false otherwise
-     *
-     * @api
      */
     public function has($key)
     {
@@ -180,8 +162,6 @@ public function has($key)
      * Removes a parameter.
      *
      * @param string $key The key
-     *
-     * @api
      */
     public function remove($key)
     {
@@ -196,8 +176,6 @@ public function remove($key)
      * @param bool   $deep    If true, a path like foo[bar] will find deeper items
      *
      * @return string The filtered value
-     *
-     * @api
      */
     public function getAlpha($key, $default = '', $deep = false)
     {
@@ -212,8 +190,6 @@ public function getAlpha($key, $default = '', $deep = false)
      * @param bool   $deep    If true, a path like foo[bar] will find deeper items
      *
      * @return string The filtered value
-     *
-     * @api
      */
     public function getAlnum($key, $default = '', $deep = false)
     {
@@ -228,8 +204,6 @@ public function getAlnum($key, $default = '', $deep = false)
      * @param bool   $deep    If true, a path like foo[bar] will find deeper items
      *
      * @return string The filtered value
-     *
-     * @api
      */
     public function getDigits($key, $default = '', $deep = false)
     {
@@ -245,8 +219,6 @@ public function getDigits($key, $default = '', $deep = false)
      * @param bool   $deep    If true, a path like foo[bar] will find deeper items
      *
      * @return int The filtered value
-     *
-     * @api
      */
     public function getInt($key, $default = 0, $deep = false)
     {
diff --git a/vendor/symfony/http-foundation/RedirectResponse.php b/vendor/symfony/http-foundation/RedirectResponse.php
index 5dc0b9e..a21eb5c 100644
--- a/vendor/symfony/http-foundation/RedirectResponse.php
+++ b/vendor/symfony/http-foundation/RedirectResponse.php
@@ -15,8 +15,6 @@
  * RedirectResponse represents an HTTP response doing a redirect.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class RedirectResponse extends Response
 {
@@ -32,8 +30,6 @@ class RedirectResponse extends Response
      * @throws \InvalidArgumentException
      *
      * @see http://tools.ietf.org/html/rfc2616#section-10.3
-     *
-     * @api
      */
     public function __construct($url, $status = 302, $headers = array())
     {
diff --git a/vendor/symfony/http-foundation/Request.php b/vendor/symfony/http-foundation/Request.php
index 510a971..ff8d411 100644
--- a/vendor/symfony/http-foundation/Request.php
+++ b/vendor/symfony/http-foundation/Request.php
@@ -25,8 +25,6 @@
  *   * getUriForPath
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Request
 {
@@ -85,8 +83,6 @@ class Request
      * Custom parameters.
      *
      * @var \Symfony\Component\HttpFoundation\ParameterBag
-     *
-     * @api
      */
     public $attributes;
 
@@ -94,8 +90,6 @@ class Request
      * Request body parameters ($_POST).
      *
      * @var \Symfony\Component\HttpFoundation\ParameterBag
-     *
-     * @api
      */
     public $request;
 
@@ -103,8 +97,6 @@ class Request
      * Query string parameters ($_GET).
      *
      * @var \Symfony\Component\HttpFoundation\ParameterBag
-     *
-     * @api
      */
     public $query;
 
@@ -112,8 +104,6 @@ class Request
      * Server and execution environment parameters ($_SERVER).
      *
      * @var \Symfony\Component\HttpFoundation\ServerBag
-     *
-     * @api
      */
     public $server;
 
@@ -121,8 +111,6 @@ class Request
      * Uploaded files ($_FILES).
      *
      * @var \Symfony\Component\HttpFoundation\FileBag
-     *
-     * @api
      */
     public $files;
 
@@ -130,8 +118,6 @@ class Request
      * Cookies ($_COOKIE).
      *
      * @var \Symfony\Component\HttpFoundation\ParameterBag
-     *
-     * @api
      */
     public $cookies;
 
@@ -139,8 +125,6 @@ class Request
      * Headers (taken from the $_SERVER).
      *
      * @var \Symfony\Component\HttpFoundation\HeaderBag
-     *
-     * @api
      */
     public $headers;
 
@@ -231,8 +215,6 @@ class Request
      * @param array           $files      The FILES parameters
      * @param array           $server     The SERVER parameters
      * @param string|resource $content    The raw body data
-     *
-     * @api
      */
     public function __construct(array $query = array(), array $request = array(), array $attributes = array(), array $cookies = array(), array $files = array(), array $server = array(), $content = null)
     {
@@ -251,8 +233,6 @@ public function __construct(array $query = array(), array $request = array(), ar
      * @param array           $files      The FILES parameters
      * @param array           $server     The SERVER parameters
      * @param string|resource $content    The raw body data
-     *
-     * @api
      */
     public function initialize(array $query = array(), array $request = array(), array $attributes = array(), array $cookies = array(), array $files = array(), array $server = array(), $content = null)
     {
@@ -281,8 +261,6 @@ public function initialize(array $query = array(), array $request = array(), arr
      * Creates a new request with values from PHP's super globals.
      *
      * @return Request A new request
-     *
-     * @api
      */
     public static function createFromGlobals()
     {
@@ -326,8 +304,6 @@ public static function createFromGlobals()
      * @param string $content    The raw body data
      *
      * @return Request A Request instance
-     *
-     * @api
      */
     public static function create($uri, $method = 'GET', $parameters = array(), $cookies = array(), $files = array(), $server = array(), $content = null)
     {
@@ -446,8 +422,6 @@ public static function setFactory($callable)
      * @param array $server     The SERVER parameters
      *
      * @return Request The duplicated request
-     *
-     * @api
      */
     public function duplicate(array $query = null, array $request = null, array $attributes = null, array $cookies = null, array $files = null, array $server = null)
     {
@@ -534,8 +508,6 @@ public function __toString()
      *
      * It overrides $_GET, $_POST, $_REQUEST, $_SERVER, $_COOKIE.
      * $_FILES is never overridden, see rfc1867
-     *
-     * @api
      */
     public function overrideGlobals()
     {
@@ -572,8 +544,6 @@ public function overrideGlobals()
      * You should only list the reverse proxies that you manage directly.
      *
      * @param array $proxies A list of trusted proxies
-     *
-     * @api
      */
     public static function setTrustedProxies(array $proxies)
     {
@@ -771,8 +741,6 @@ public function get($key, $default = null, $deep = false)
      * Gets the Session.
      *
      * @return SessionInterface|null The session
-     *
-     * @api
      */
     public function getSession()
     {
@@ -784,8 +752,6 @@ public function getSession()
      * previous requests.
      *
      * @return bool
-     *
-     * @api
      */
     public function hasPreviousSession()
     {
@@ -801,8 +767,6 @@ public function hasPreviousSession()
      * is associated with a Session instance.
      *
      * @return bool true when the Request contains a Session object, false otherwise
-     *
-     * @api
      */
     public function hasSession()
     {
@@ -813,8 +777,6 @@ public function hasSession()
      * Sets the Session.
      *
      * @param SessionInterface $session The Session
-     *
-     * @api
      */
     public function setSession(SessionInterface $session)
     {
@@ -886,8 +848,6 @@ public function getClientIps()
      *
      * @see getClientIps()
      * @see http://en.wikipedia.org/wiki/X-Forwarded-For
-     *
-     * @api
      */
     public function getClientIp()
     {
@@ -900,8 +860,6 @@ public function getClientIp()
      * Returns current script name.
      *
      * @return string
-     *
-     * @api
      */
     public function getScriptName()
     {
@@ -921,8 +879,6 @@ public function getScriptName()
      *  * http://localhost/mysite/about?var=1  returns '/about'
      *
      * @return string The raw path (i.e. not urldecoded)
-     *
-     * @api
      */
     public function getPathInfo()
     {
@@ -944,8 +900,6 @@ public function getPathInfo()
      *  * http://localhost/we%20b/index.php  returns '/we%20b'
      *
      * @return string The raw path (i.e. not urldecoded)
-     *
-     * @api
      */
     public function getBasePath()
     {
@@ -965,8 +919,6 @@ public function getBasePath()
      * script filename (e.g. index.php) if one exists.
      *
      * @return string The raw URL (i.e. not urldecoded)
-     *
-     * @api
      */
     public function getBaseUrl()
     {
@@ -981,8 +933,6 @@ public function getBaseUrl()
      * Gets the request's scheme.
      *
      * @return string
-     *
-     * @api
      */
     public function getScheme()
     {
@@ -1001,8 +951,6 @@ public function getScheme()
      * configure it via "setTrustedHeaderName()" with the "client-port" key.
      *
      * @return string
-     *
-     * @api
      */
     public function getPort()
     {
@@ -1076,8 +1024,6 @@ public function getUserInfo()
      * The port name will be appended to the host if it's non-standard.
      *
      * @return string
-     *
-     * @api
      */
     public function getHttpHost()
     {
@@ -1095,8 +1041,6 @@ public function getHttpHost()
      * Returns the requested URI (path and query string).
      *
      * @return string The raw URI (i.e. not URI decoded)
-     *
-     * @api
      */
     public function getRequestUri()
     {
@@ -1126,8 +1070,6 @@ public function getSchemeAndHttpHost()
      * @return string A normalized URI (URL) for the Request
      *
      * @see getQueryString()
-     *
-     * @api
      */
     public function getUri()
     {
@@ -1144,8 +1086,6 @@ public function getUri()
      * @param string $path A path to use instead of the current one
      *
      * @return string The normalized URI for the path
-     *
-     * @api
      */
     public function getUriForPath($path)
     {
@@ -1214,8 +1154,6 @@ public function getRelativeUriForPath($path)
      * and have consistent escaping.
      *
      * @return string|null A normalized query string for the Request
-     *
-     * @api
      */
     public function getQueryString()
     {
@@ -1227,7 +1165,7 @@ public function getQueryString()
     /**
      * Checks whether the request is secure or not.
      *
-     * This method can read the client port from the "X-Forwarded-Proto" header
+     * This method can read the client protocol from the "X-Forwarded-Proto" header
      * when trusted proxies were set via "setTrustedProxies()".
      *
      * The "X-Forwarded-Proto" header must contain the protocol: "https" or "http".
@@ -1237,8 +1175,6 @@ public function getQueryString()
      * the "client-proto" key.
      *
      * @return bool
-     *
-     * @api
      */
     public function isSecure()
     {
@@ -1254,7 +1190,7 @@ public function isSecure()
     /**
      * Returns the host name.
      *
-     * This method can read the client port from the "X-Forwarded-Host" header
+     * This method can read the client host name from the "X-Forwarded-Host" header
      * when trusted proxies were set via "setTrustedProxies()".
      *
      * The "X-Forwarded-Host" header must contain the client host name.
@@ -1265,8 +1201,6 @@ public function isSecure()
      * @return string
      *
      * @throws \UnexpectedValueException when the host name is invalid
-     *
-     * @api
      */
     public function getHost()
     {
@@ -1316,8 +1250,6 @@ public function getHost()
      * Sets the request method.
      *
      * @param string $method
-     *
-     * @api
      */
     public function setMethod($method)
     {
@@ -1338,8 +1270,6 @@ public function setMethod($method)
      *
      * @return string The request method
      *
-     * @api
-     *
      * @see getRealMethod()
      */
     public function getMethod()
@@ -1377,8 +1307,6 @@ public function getRealMethod()
      * @param string $format The format
      *
      * @return string The associated mime type (null if not found)
-     *
-     * @api
      */
     public function getMimeType($format)
     {
@@ -1395,8 +1323,6 @@ public function getMimeType($format)
      * @param string $mimeType The associated mime type
      *
      * @return string|null The format (null if not found)
-     *
-     * @api
      */
     public function getFormat($mimeType)
     {
@@ -1420,8 +1346,6 @@ public function getFormat($mimeType)
      *
      * @param string       $format    The format
      * @param string|array $mimeTypes The associated mime types (the preferred one must be the first as it will be used as the content type)
-     *
-     * @api
      */
     public function setFormat($format, $mimeTypes)
     {
@@ -1444,8 +1368,6 @@ public function setFormat($format, $mimeTypes)
      * @param string $default The default format
      *
      * @return string The request format
-     *
-     * @api
      */
     public function getRequestFormat($default = 'html')
     {
@@ -1460,8 +1382,6 @@ public function getRequestFormat($default = 'html')
      * Sets the request format.
      *
      * @param string $format The request format.
-     *
-     * @api
      */
     public function setRequestFormat($format)
     {
@@ -1472,8 +1392,6 @@ public function setRequestFormat($format)
      * Gets the format associated with the request.
      *
      * @return string|null The format (null if no content type is present)
-     *
-     * @api
      */
     public function getContentType()
     {
@@ -1484,8 +1402,6 @@ public function getContentType()
      * Sets the default locale.
      *
      * @param string $locale
-     *
-     * @api
      */
     public function setDefaultLocale($locale)
     {
@@ -1510,8 +1426,6 @@ public function getDefaultLocale()
      * Sets the locale.
      *
      * @param string $locale
-     *
-     * @api
      */
     public function setLocale($locale)
     {
@@ -1544,8 +1458,6 @@ public function isMethod($method)
      * Checks whether the method is safe or not.
      *
      * @return bool
-     *
-     * @api
      */
     public function isMethodSafe()
     {
@@ -1626,8 +1538,6 @@ public function isNoCache()
      * @param array $locales An array of ordered available locales
      *
      * @return string|null The preferred locale
-     *
-     * @api
      */
     public function getPreferredLanguage(array $locales = null)
     {
@@ -1661,8 +1571,6 @@ public function getPreferredLanguage(array $locales = null)
      * Gets a list of languages acceptable by the client browser.
      *
      * @return array Languages ordered in the user browser preferences
-     *
-     * @api
      */
     public function getLanguages()
     {
@@ -1703,8 +1611,6 @@ public function getLanguages()
      * Gets a list of charsets acceptable by the client browser.
      *
      * @return array List of charsets in preferable order
-     *
-     * @api
      */
     public function getCharsets()
     {
@@ -1733,8 +1639,6 @@ public function getEncodings()
      * Gets a list of content types acceptable by the client browser.
      *
      * @return array List of content types in preferable order
-     *
-     * @api
      */
     public function getAcceptableContentTypes()
     {
@@ -1754,8 +1658,6 @@ public function getAcceptableContentTypes()
      * @link http://en.wikipedia.org/wiki/List_of_Ajax_frameworks#JavaScript
      *
      * @return bool true if the request is an XMLHttpRequest, false otherwise
-     *
-     * @api
      */
     public function isXmlHttpRequest()
     {
diff --git a/vendor/symfony/http-foundation/RequestMatcher.php b/vendor/symfony/http-foundation/RequestMatcher.php
index c571c60..ca094ca 100644
--- a/vendor/symfony/http-foundation/RequestMatcher.php
+++ b/vendor/symfony/http-foundation/RequestMatcher.php
@@ -15,8 +15,6 @@
  * RequestMatcher compares a pre-defined set of checks against a Request instance.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class RequestMatcher implements RequestMatcherInterface
 {
@@ -144,8 +142,6 @@ public function matchAttribute($key, $regexp)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function matches(Request $request)
     {
diff --git a/vendor/symfony/http-foundation/RequestMatcherInterface.php b/vendor/symfony/http-foundation/RequestMatcherInterface.php
index b45f80c..066e7e8 100644
--- a/vendor/symfony/http-foundation/RequestMatcherInterface.php
+++ b/vendor/symfony/http-foundation/RequestMatcherInterface.php
@@ -15,8 +15,6 @@
  * RequestMatcherInterface is an interface for strategies to match a Request.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface RequestMatcherInterface
 {
@@ -26,8 +24,6 @@
      * @param Request $request The request to check for a match
      *
      * @return bool true if the request matches, false otherwise
-     *
-     * @api
      */
     public function matches(Request $request);
 }
diff --git a/vendor/symfony/http-foundation/Response.php b/vendor/symfony/http-foundation/Response.php
index 8c88c91..cb706d5 100644
--- a/vendor/symfony/http-foundation/Response.php
+++ b/vendor/symfony/http-foundation/Response.php
@@ -15,8 +15,6 @@
  * Response represents an HTTP response.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Response
 {
@@ -193,8 +191,6 @@ class Response
      * @param array $headers An array of response headers
      *
      * @throws \InvalidArgumentException When the HTTP status code is not valid
-     *
-     * @api
      */
     public function __construct($content = '', $status = 200, $headers = array())
     {
@@ -203,7 +199,7 @@ public function __construct($content = '', $status = 200, $headers = array())
         $this->setStatusCode($status);
         $this->setProtocolVersion('1.0');
         if (!$this->headers->has('Date')) {
-            $this->setDate(new \DateTime(null, new \DateTimeZone('UTC')));
+            $this->setDate(\DateTime::createFromFormat('U', time(), new \DateTimeZone('UTC')));
         }
     }
 
@@ -367,8 +363,6 @@ public function sendContent()
      * Sends HTTP headers and content.
      *
      * @return Response
-     *
-     * @api
      */
     public function send()
     {
@@ -394,8 +388,6 @@ public function send()
      * @return Response
      *
      * @throws \UnexpectedValueException
-     *
-     * @api
      */
     public function setContent($content)
     {
@@ -412,8 +404,6 @@ public function setContent($content)
      * Gets the current response content.
      *
      * @return string Content
-     *
-     * @api
      */
     public function getContent()
     {
@@ -426,8 +416,6 @@ public function getContent()
      * @param string $version The HTTP protocol version
      *
      * @return Response
-     *
-     * @api
      */
     public function setProtocolVersion($version)
     {
@@ -440,8 +428,6 @@ public function setProtocolVersion($version)
      * Gets the HTTP protocol version.
      *
      * @return string The HTTP protocol version
-     *
-     * @api
      */
     public function getProtocolVersion()
     {
@@ -460,8 +446,6 @@ public function getProtocolVersion()
      * @return Response
      *
      * @throws \InvalidArgumentException When the HTTP status code is not valid
-     *
-     * @api
      */
     public function setStatusCode($code, $text = null)
     {
@@ -491,8 +475,6 @@ public function setStatusCode($code, $text = null)
      * Retrieves the status code for the current web response.
      *
      * @return int Status code
-     *
-     * @api
      */
     public function getStatusCode()
     {
@@ -505,8 +487,6 @@ public function getStatusCode()
      * @param string $charset Character set
      *
      * @return Response
-     *
-     * @api
      */
     public function setCharset($charset)
     {
@@ -519,8 +499,6 @@ public function setCharset($charset)
      * Retrieves the response charset.
      *
      * @return string Character set
-     *
-     * @api
      */
     public function getCharset()
     {
@@ -537,8 +515,6 @@ public function getCharset()
      * validator (Last-Modified, ETag) are considered uncacheable.
      *
      * @return bool true if the response is worth caching, false otherwise
-     *
-     * @api
      */
     public function isCacheable()
     {
@@ -561,8 +537,6 @@ public function isCacheable()
      * indicator or Expires header and the calculated age is less than the freshness lifetime.
      *
      * @return bool true if the response is fresh, false otherwise
-     *
-     * @api
      */
     public function isFresh()
     {
@@ -574,8 +548,6 @@ public function isFresh()
      * the response with the origin server using a conditional GET request.
      *
      * @return bool true if the response is validateable, false otherwise
-     *
-     * @api
      */
     public function isValidateable()
     {
@@ -588,8 +560,6 @@ public function isValidateable()
      * It makes the response ineligible for serving other clients.
      *
      * @return Response
-     *
-     * @api
      */
     public function setPrivate()
     {
@@ -605,8 +575,6 @@ public function setPrivate()
      * It makes the response eligible for serving other clients.
      *
      * @return Response
-     *
-     * @api
      */
     public function setPublic()
     {
@@ -625,8 +593,6 @@ public function setPublic()
      * greater than the value provided by the origin.
      *
      * @return bool true if the response must be revalidated by a cache, false otherwise
-     *
-     * @api
      */
     public function mustRevalidate()
     {
@@ -639,8 +605,6 @@ public function mustRevalidate()
      * @return \DateTime A \DateTime instance
      *
      * @throws \RuntimeException When the header is not parseable
-     *
-     * @api
      */
     public function getDate()
     {
@@ -653,8 +617,6 @@ public function getDate()
      * @param \DateTime $date A \DateTime instance
      *
      * @return Response
-     *
-     * @api
      */
     public function setDate(\DateTime $date)
     {
@@ -682,8 +644,6 @@ public function getAge()
      * Marks the response stale by setting the Age header to be equal to the maximum age of the response.
      *
      * @return Response
-     *
-     * @api
      */
     public function expire()
     {
@@ -698,8 +658,6 @@ public function expire()
      * Returns the value of the Expires header as a DateTime instance.
      *
      * @return \DateTime|null A DateTime instance or null if the header does not exist
-     *
-     * @api
      */
     public function getExpires()
     {
@@ -719,8 +677,6 @@ public function getExpires()
      * @param \DateTime|null $date A \DateTime instance or null to remove the header
      *
      * @return Response
-     *
-     * @api
      */
     public function setExpires(\DateTime $date = null)
     {
@@ -743,8 +699,6 @@ public function setExpires(\DateTime $date = null)
      * back on an expires header. It returns null when no maximum age can be established.
      *
      * @return int|null Number of seconds
-     *
-     * @api
      */
     public function getMaxAge()
     {
@@ -769,8 +723,6 @@ public function getMaxAge()
      * @param int $value Number of seconds
      *
      * @return Response
-     *
-     * @api
      */
     public function setMaxAge($value)
     {
@@ -787,8 +739,6 @@ public function setMaxAge($value)
      * @param int $value Number of seconds
      *
      * @return Response
-     *
-     * @api
      */
     public function setSharedMaxAge($value)
     {
@@ -807,8 +757,6 @@ public function setSharedMaxAge($value)
      * revalidating with the origin.
      *
      * @return int|null The TTL in seconds
-     *
-     * @api
      */
     public function getTtl()
     {
@@ -825,8 +773,6 @@ public function getTtl()
      * @param int $seconds Number of seconds
      *
      * @return Response
-     *
-     * @api
      */
     public function setTtl($seconds)
     {
@@ -843,8 +789,6 @@ public function setTtl($seconds)
      * @param int $seconds Number of seconds
      *
      * @return Response
-     *
-     * @api
      */
     public function setClientTtl($seconds)
     {
@@ -859,8 +803,6 @@ public function setClientTtl($seconds)
      * @return \DateTime|null A DateTime instance or null if the header does not exist
      *
      * @throws \RuntimeException When the HTTP header is not parseable
-     *
-     * @api
      */
     public function getLastModified()
     {
@@ -875,8 +817,6 @@ public function getLastModified()
      * @param \DateTime|null $date A \DateTime instance or null to remove the header
      *
      * @return Response
-     *
-     * @api
      */
     public function setLastModified(\DateTime $date = null)
     {
@@ -895,8 +835,6 @@ public function setLastModified(\DateTime $date = null)
      * Returns the literal value of the ETag HTTP header.
      *
      * @return string|null The ETag HTTP header or null if it does not exist
-     *
-     * @api
      */
     public function getEtag()
     {
@@ -910,8 +848,6 @@ public function getEtag()
      * @param bool        $weak Whether you want a weak ETag or not
      *
      * @return Response
-     *
-     * @api
      */
     public function setEtag($etag = null, $weak = false)
     {
@@ -938,8 +874,6 @@ public function setEtag($etag = null, $weak = false)
      * @return Response
      *
      * @throws \InvalidArgumentException
-     *
-     * @api
      */
     public function setCache(array $options)
     {
@@ -991,8 +925,6 @@ public function setCache(array $options)
      * @return Response
      *
      * @see http://tools.ietf.org/html/rfc2616#section-10.3.5
-     *
-     * @api
      */
     public function setNotModified()
     {
@@ -1011,8 +943,6 @@ public function setNotModified()
      * Returns true if the response includes a Vary header.
      *
      * @return bool true if the response includes a Vary header, false otherwise
-     *
-     * @api
      */
     public function hasVary()
     {
@@ -1023,8 +953,6 @@ public function hasVary()
      * Returns an array of header names given in the Vary header.
      *
      * @return array An array of Vary names
-     *
-     * @api
      */
     public function getVary()
     {
@@ -1047,8 +975,6 @@ public function getVary()
      * @param bool         $replace Whether to replace the actual value of not (true by default)
      *
      * @return Response
-     *
-     * @api
      */
     public function setVary($headers, $replace = true)
     {
@@ -1067,8 +993,6 @@ public function setVary($headers, $replace = true)
      * @param Request $request A Request instance
      *
      * @return bool true if the Response validators match the Request, false otherwise
-     *
-     * @api
      */
     public function isNotModified(Request $request)
     {
@@ -1100,8 +1024,6 @@ public function isNotModified(Request $request)
      * Is response invalid?
      *
      * @return bool
-     *
-     * @api
      */
     public function isInvalid()
     {
@@ -1112,8 +1034,6 @@ public function isInvalid()
      * Is response informative?
      *
      * @return bool
-     *
-     * @api
      */
     public function isInformational()
     {
@@ -1124,8 +1044,6 @@ public function isInformational()
      * Is response successful?
      *
      * @return bool
-     *
-     * @api
      */
     public function isSuccessful()
     {
@@ -1136,8 +1054,6 @@ public function isSuccessful()
      * Is the response a redirect?
      *
      * @return bool
-     *
-     * @api
      */
     public function isRedirection()
     {
@@ -1148,8 +1064,6 @@ public function isRedirection()
      * Is there a client error?
      *
      * @return bool
-     *
-     * @api
      */
     public function isClientError()
     {
@@ -1160,8 +1074,6 @@ public function isClientError()
      * Was there a server side error?
      *
      * @return bool
-     *
-     * @api
      */
     public function isServerError()
     {
@@ -1172,8 +1084,6 @@ public function isServerError()
      * Is the response OK?
      *
      * @return bool
-     *
-     * @api
      */
     public function isOk()
     {
@@ -1184,8 +1094,6 @@ public function isOk()
      * Is the response forbidden?
      *
      * @return bool
-     *
-     * @api
      */
     public function isForbidden()
     {
@@ -1196,8 +1104,6 @@ public function isForbidden()
      * Is the response a not found error?
      *
      * @return bool
-     *
-     * @api
      */
     public function isNotFound()
     {
@@ -1210,8 +1116,6 @@ public function isNotFound()
      * @param string $location
      *
      * @return bool
-     *
-     * @api
      */
     public function isRedirect($location = null)
     {
@@ -1222,8 +1126,6 @@ public function isRedirect($location = null)
      * Is the response empty?
      *
      * @return bool
-     *
-     * @api
      */
     public function isEmpty()
     {
diff --git a/vendor/symfony/http-foundation/ResponseHeaderBag.php b/vendor/symfony/http-foundation/ResponseHeaderBag.php
index 375d191..328bf49 100644
--- a/vendor/symfony/http-foundation/ResponseHeaderBag.php
+++ b/vendor/symfony/http-foundation/ResponseHeaderBag.php
@@ -15,8 +15,6 @@
  * ResponseHeaderBag is a container for Response HTTP headers.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class ResponseHeaderBag extends HeaderBag
 {
@@ -45,8 +43,6 @@ class ResponseHeaderBag extends HeaderBag
      * Constructor.
      *
      * @param array $headers An array of HTTP headers
-     *
-     * @api
      */
     public function __construct(array $headers = array())
     {
@@ -84,8 +80,6 @@ public function allPreserveCase()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function replace(array $headers = array())
     {
@@ -100,8 +94,6 @@ public function replace(array $headers = array())
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function set($key, $values, $replace = true)
     {
@@ -121,8 +113,6 @@ public function set($key, $values, $replace = true)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function remove($key)
     {
@@ -156,8 +146,6 @@ public function getCacheControlDirective($key)
      * Sets a cookie.
      *
      * @param Cookie $cookie
-     *
-     * @api
      */
     public function setCookie(Cookie $cookie)
     {
@@ -170,8 +158,6 @@ public function setCookie(Cookie $cookie)
      * @param string $name
      * @param string $path
      * @param string $domain
-     *
-     * @api
      */
     public function removeCookie($name, $path = '/', $domain = null)
     {
@@ -198,8 +184,6 @@ public function removeCookie($name, $path = '/', $domain = null)
      * @throws \InvalidArgumentException When the $format is invalid
      *
      * @return array
-     *
-     * @api
      */
     public function getCookies($format = self::COOKIES_FLAT)
     {
@@ -231,8 +215,6 @@ public function getCookies($format = self::COOKIES_FLAT)
      * @param string $domain
      * @param bool   $secure
      * @param bool   $httpOnly
-     *
-     * @api
      */
     public function clearCookie($name, $path = '/', $domain = null, $secure = false, $httpOnly = true)
     {
diff --git a/vendor/symfony/http-foundation/Session/Session.php b/vendor/symfony/http-foundation/Session/Session.php
index ac626fd..b743fe1 100644
--- a/vendor/symfony/http-foundation/Session/Session.php
+++ b/vendor/symfony/http-foundation/Session/Session.php
@@ -23,8 +23,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Drak <drak@zikula.org>
- *
- * @api
  */
 class Session implements SessionInterface, \IteratorAggregate, \Countable
 {
diff --git a/vendor/symfony/http-foundation/Session/SessionInterface.php b/vendor/symfony/http-foundation/Session/SessionInterface.php
index 773dc7a..e2b6584 100644
--- a/vendor/symfony/http-foundation/Session/SessionInterface.php
+++ b/vendor/symfony/http-foundation/Session/SessionInterface.php
@@ -26,8 +26,6 @@
      * @return bool True if session started.
      *
      * @throws \RuntimeException If session fails to start.
-     *
-     * @api
      */
     public function start();
 
@@ -35,8 +33,6 @@ public function start();
      * Returns the session ID.
      *
      * @return string The session ID.
-     *
-     * @api
      */
     public function getId();
 
@@ -44,8 +40,6 @@ public function getId();
      * Sets the session ID.
      *
      * @param string $id
-     *
-     * @api
      */
     public function setId($id);
 
@@ -53,8 +47,6 @@ public function setId($id);
      * Returns the session name.
      *
      * @return mixed The session name.
-     *
-     * @api
      */
     public function getName();
 
@@ -62,8 +54,6 @@ public function getName();
      * Sets the session name.
      *
      * @param string $name
-     *
-     * @api
      */
     public function setName($name);
 
@@ -79,8 +69,6 @@ public function setName($name);
      *                      not a Unix timestamp.
      *
      * @return bool True if session invalidated, false if error.
-     *
-     * @api
      */
     public function invalidate($lifetime = null);
 
@@ -95,8 +83,6 @@ public function invalidate($lifetime = null);
      *                       not a Unix timestamp.
      *
      * @return bool True if session migrated, false if error.
-     *
-     * @api
      */
     public function migrate($destroy = false, $lifetime = null);
 
@@ -115,8 +101,6 @@ public function save();
      * @param string $name The attribute name
      *
      * @return bool true if the attribute is defined, false otherwise
-     *
-     * @api
      */
     public function has($name);
 
@@ -127,8 +111,6 @@ public function has($name);
      * @param mixed  $default The default value if not found.
      *
      * @return mixed
-     *
-     * @api
      */
     public function get($name, $default = null);
 
@@ -137,8 +119,6 @@ public function get($name, $default = null);
      *
      * @param string $name
      * @param mixed  $value
-     *
-     * @api
      */
     public function set($name, $value);
 
@@ -146,8 +126,6 @@ public function set($name, $value);
      * Returns attributes.
      *
      * @return array Attributes
-     *
-     * @api
      */
     public function all();
 
@@ -164,15 +142,11 @@ public function replace(array $attributes);
      * @param string $name
      *
      * @return mixed The removed value or null when it does not exist
-     *
-     * @api
      */
     public function remove($name);
 
     /**
      * Clears all attributes.
-     *
-     * @api
      */
     public function clear();
 
diff --git a/vendor/symfony/http-foundation/Session/Storage/Handler/NullSessionHandler.php b/vendor/symfony/http-foundation/Session/Storage/Handler/NullSessionHandler.php
index d88ce89..1516d43 100644
--- a/vendor/symfony/http-foundation/Session/Storage/Handler/NullSessionHandler.php
+++ b/vendor/symfony/http-foundation/Session/Storage/Handler/NullSessionHandler.php
@@ -17,8 +17,6 @@
  * Can be used in unit testing or in a situations where persisted sessions are not desired.
  *
  * @author Drak <drak@zikula.org>
- *
- * @api
  */
 class NullSessionHandler implements \SessionHandlerInterface
 {
diff --git a/vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php b/vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php
index db705db..fd03dc8 100644
--- a/vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php
+++ b/vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php
@@ -65,7 +65,7 @@ class NativeSessionStorage implements SessionStorageInterface
      * ("auto_start", is not supported as it tells PHP to start a session before
      * PHP starts to execute user-land code. Setting during runtime has no effect).
      *
-     * cache_limiter, "nocache" (use "0" to prevent headers from being sent entirely).
+     * cache_limiter, "" (use "0" to prevent headers from being sent entirely).
      * cookie_domain, ""
      * cookie_httponly, ""
      * cookie_lifetime, "0"
@@ -195,6 +195,16 @@ public function setName($name)
      */
     public function regenerate($destroy = false, $lifetime = null)
     {
+        // Cannot regenerate the session ID for non-active sessions.
+        if (PHP_VERSION_ID >= 50400 && \PHP_SESSION_ACTIVE !== session_status()) {
+            return false;
+        }
+
+        // Check if session ID exists in PHP 5.3
+        if (PHP_VERSION_ID < 50400 && '' === session_id()) {
+            return false;
+        }
+
         if (null !== $lifetime) {
             ini_set('session.cookie_lifetime', $lifetime);
         }
diff --git a/vendor/symfony/http-foundation/Session/Storage/SessionStorageInterface.php b/vendor/symfony/http-foundation/Session/Storage/SessionStorageInterface.php
index 5dd309c..9f81847 100644
--- a/vendor/symfony/http-foundation/Session/Storage/SessionStorageInterface.php
+++ b/vendor/symfony/http-foundation/Session/Storage/SessionStorageInterface.php
@@ -18,8 +18,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Drak <drak@zikula.org>
- *
- * @api
  */
 interface SessionStorageInterface
 {
@@ -29,8 +27,6 @@
      * @throws \RuntimeException If something goes wrong starting the session.
      *
      * @return bool True if started.
-     *
-     * @api
      */
     public function start();
 
@@ -45,8 +41,6 @@ public function isStarted();
      * Returns the session ID.
      *
      * @return string The session ID or empty.
-     *
-     * @api
      */
     public function getId();
 
@@ -54,8 +48,6 @@ public function getId();
      * Sets the session ID.
      *
      * @param string $id
-     *
-     * @api
      */
     public function setId($id);
 
@@ -63,8 +55,6 @@ public function setId($id);
      * Returns the session name.
      *
      * @return mixed The session name.
-     *
-     * @api
      */
     public function getName();
 
@@ -72,8 +62,6 @@ public function getName();
      * Sets the session name.
      *
      * @param string $name
-     *
-     * @api
      */
     public function setName($name);
 
@@ -105,8 +93,6 @@ public function setName($name);
      * @return bool True if session regenerated, false if error
      *
      * @throws \RuntimeException If an error occurs while regenerating this storage
-     *
-     * @api
      */
     public function regenerate($destroy = false, $lifetime = null);
 
diff --git a/vendor/symfony/http-foundation/StreamedResponse.php b/vendor/symfony/http-foundation/StreamedResponse.php
index 0da42b2..4b936a1 100644
--- a/vendor/symfony/http-foundation/StreamedResponse.php
+++ b/vendor/symfony/http-foundation/StreamedResponse.php
@@ -23,8 +23,6 @@
  * @see flush()
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class StreamedResponse extends Response
 {
@@ -37,8 +35,6 @@ class StreamedResponse extends Response
      * @param callable|null $callback A valid PHP callback or null to set it later
      * @param int           $status   The response status code
      * @param array         $headers  An array of response headers
-     *
-     * @api
      */
     public function __construct($callback = null, $status = 200, $headers = array())
     {
diff --git a/vendor/symfony/http-foundation/composer.json b/vendor/symfony/http-foundation/composer.json
index 80f4436..09f9679 100644
--- a/vendor/symfony/http-foundation/composer.json
+++ b/vendor/symfony/http-foundation/composer.json
@@ -19,7 +19,6 @@
         "php": ">=5.3.9"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
         "symfony/expression-language": "~2.4"
     },
     "autoload": {
diff --git a/vendor/symfony/http-kernel/Bundle/Bundle.php b/vendor/symfony/http-kernel/Bundle/Bundle.php
index c58f0f0..ebec7ff 100644
--- a/vendor/symfony/http-kernel/Bundle/Bundle.php
+++ b/vendor/symfony/http-kernel/Bundle/Bundle.php
@@ -23,8 +23,6 @@
  * for DependencyInjection extensions and Console commands.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 abstract class Bundle extends ContainerAware implements BundleInterface
 {
@@ -66,8 +64,6 @@ public function build(ContainerBuilder $container)
      * @return ExtensionInterface|null The container extension
      *
      * @throws \LogicException
-     *
-     * @api
      */
     public function getContainerExtension()
     {
@@ -105,8 +101,6 @@ public function getContainerExtension()
      * Gets the Bundle namespace.
      *
      * @return string The Bundle namespace
-     *
-     * @api
      */
     public function getNamespace()
     {
@@ -119,8 +113,6 @@ public function getNamespace()
      * Gets the Bundle directory path.
      *
      * @return string The Bundle absolute path
-     *
-     * @api
      */
     public function getPath()
     {
@@ -136,8 +128,6 @@ public function getPath()
      * Returns the bundle parent name.
      *
      * @return string The Bundle parent name it overrides or null if no parent
-     *
-     * @api
      */
     public function getParent()
     {
@@ -147,8 +137,6 @@ public function getParent()
      * Returns the bundle name (the class short name).
      *
      * @return string The Bundle name
-     *
-     * @api
      */
     final public function getName()
     {
diff --git a/vendor/symfony/http-kernel/Bundle/BundleInterface.php b/vendor/symfony/http-kernel/Bundle/BundleInterface.php
index 3203d84..25eea1d 100644
--- a/vendor/symfony/http-kernel/Bundle/BundleInterface.php
+++ b/vendor/symfony/http-kernel/Bundle/BundleInterface.php
@@ -19,22 +19,16 @@
  * BundleInterface.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface BundleInterface extends ContainerAwareInterface
 {
     /**
      * Boots the Bundle.
-     *
-     * @api
      */
     public function boot();
 
     /**
      * Shutdowns the Bundle.
-     *
-     * @api
      */
     public function shutdown();
 
@@ -44,8 +38,6 @@ public function shutdown();
      * It is only ever called once when the cache is empty.
      *
      * @param ContainerBuilder $container A ContainerBuilder instance
-     *
-     * @api
      */
     public function build(ContainerBuilder $container);
 
@@ -53,8 +45,6 @@ public function build(ContainerBuilder $container);
      * Returns the container extension that should be implicitly loaded.
      *
      * @return ExtensionInterface|null The default extension or null if there is none
-     *
-     * @api
      */
     public function getContainerExtension();
 
@@ -66,8 +56,6 @@ public function getContainerExtension();
      * bundle.
      *
      * @return string The Bundle name it overrides or null if no parent
-     *
-     * @api
      */
     public function getParent();
 
@@ -75,8 +63,6 @@ public function getParent();
      * Returns the bundle name (the class short name).
      *
      * @return string The Bundle name
-     *
-     * @api
      */
     public function getName();
 
@@ -84,8 +70,6 @@ public function getName();
      * Gets the Bundle namespace.
      *
      * @return string The Bundle namespace
-     *
-     * @api
      */
     public function getNamespace();
 
@@ -95,8 +79,6 @@ public function getNamespace();
      * The path should always be returned as a Unix path (with /).
      *
      * @return string The Bundle absolute path
-     *
-     * @api
      */
     public function getPath();
 }
diff --git a/vendor/symfony/http-kernel/Client.php b/vendor/symfony/http-kernel/Client.php
index 50895e7..b344fa1 100644
--- a/vendor/symfony/http-kernel/Client.php
+++ b/vendor/symfony/http-kernel/Client.php
@@ -25,8 +25,6 @@
  * Client simulates a browser and makes requests to a Kernel object.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Client extends BaseClient
 {
diff --git a/vendor/symfony/http-kernel/Controller/ControllerResolver.php b/vendor/symfony/http-kernel/Controller/ControllerResolver.php
index fec0006..0be0b68 100644
--- a/vendor/symfony/http-kernel/Controller/ControllerResolver.php
+++ b/vendor/symfony/http-kernel/Controller/ControllerResolver.php
@@ -22,8 +22,6 @@
  * the controller method arguments.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class ControllerResolver implements ControllerResolverInterface
 {
@@ -44,8 +42,6 @@ public function __construct(LoggerInterface $logger = null)
      *
      * This method looks for a '_controller' request attribute that represents
      * the controller name (a string like ClassName::MethodName).
-     *
-     * @api
      */
     public function getController(Request $request)
     {
@@ -88,8 +84,6 @@ public function getController(Request $request)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getArguments(Request $request, $controller)
     {
@@ -137,7 +131,7 @@ protected function doGetArguments(Request $request, $controller, array $paramete
      *
      * @param string $controller A Controller string
      *
-     * @return mixed A PHP callable
+     * @return callable A PHP callable
      *
      * @throws \InvalidArgumentException
      */
diff --git a/vendor/symfony/http-kernel/Controller/ControllerResolverInterface.php b/vendor/symfony/http-kernel/Controller/ControllerResolverInterface.php
index 6f805ed..f7b19ed 100644
--- a/vendor/symfony/http-kernel/Controller/ControllerResolverInterface.php
+++ b/vendor/symfony/http-kernel/Controller/ControllerResolverInterface.php
@@ -22,8 +22,6 @@
  * A Controller can be any valid PHP callable.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface ControllerResolverInterface
 {
@@ -42,8 +40,6 @@
      *                        or false if this resolver is not able to determine the controller
      *
      * @throws \LogicException If the controller can't be found
-     *
-     * @api
      */
     public function getController(Request $request);
 
@@ -56,8 +52,6 @@ public function getController(Request $request);
      * @return array An array of arguments to pass to the controller
      *
      * @throws \RuntimeException When value for argument given is not provided
-     *
-     * @api
      */
     public function getArguments(Request $request, $controller);
 }
diff --git a/vendor/symfony/http-kernel/DataCollector/DataCollectorInterface.php b/vendor/symfony/http-kernel/DataCollector/DataCollectorInterface.php
index cf4cdfd..2820ad5 100644
--- a/vendor/symfony/http-kernel/DataCollector/DataCollectorInterface.php
+++ b/vendor/symfony/http-kernel/DataCollector/DataCollectorInterface.php
@@ -18,8 +18,6 @@
  * DataCollectorInterface.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface DataCollectorInterface
 {
@@ -29,8 +27,6 @@
      * @param Request    $request   A Request instance
      * @param Response   $response  A Response instance
      * @param \Exception $exception An Exception instance
-     *
-     * @api
      */
     public function collect(Request $request, Response $response, \Exception $exception = null);
 
@@ -38,8 +34,6 @@ public function collect(Request $request, Response $response, \Exception $except
      * Returns the name of the collector.
      *
      * @return string The collector name
-     *
-     * @api
      */
     public function getName();
 }
diff --git a/vendor/symfony/http-kernel/DataCollector/DumpDataCollector.php b/vendor/symfony/http-kernel/DataCollector/DumpDataCollector.php
index e0d7d50..c50bf7a 100644
--- a/vendor/symfony/http-kernel/DataCollector/DumpDataCollector.php
+++ b/vendor/symfony/http-kernel/DataCollector/DumpDataCollector.php
@@ -34,6 +34,7 @@ class DumpDataCollector extends DataCollector implements DataDumperInterface
     private $clonesIndex = 0;
     private $rootRefs;
     private $charset;
+    private $requestStack;
     private $dumper;
     private $dumperIsInjected;
 
diff --git a/vendor/symfony/http-kernel/DependencyInjection/ConfigurableExtension.php b/vendor/symfony/http-kernel/DependencyInjection/ConfigurableExtension.php
index 3ec454b..c7eca30 100644
--- a/vendor/symfony/http-kernel/DependencyInjection/ConfigurableExtension.php
+++ b/vendor/symfony/http-kernel/DependencyInjection/ConfigurableExtension.php
@@ -17,11 +17,11 @@
  * This extension sub-class provides first-class integration with the
  * Config/Definition Component.
  *
- * You can use this as base class if you
+ * You can use this as base class if
  *
- *    a) use the Config/Definition component for configuration
- *    b) your configuration class is named "Configuration" and
- *    c) the configuration class resides in the DependencyInjection sub-folder
+ *    a) you use the Config/Definition component for configuration,
+ *    b) your configuration class is named "Configuration", and
+ *    c) the configuration class resides in the DependencyInjection sub-folder.
  *
  * @author Johannes M. Schmitt <schmittjoh@gmail.com>
  */
diff --git a/vendor/symfony/http-kernel/Event/FilterControllerEvent.php b/vendor/symfony/http-kernel/Event/FilterControllerEvent.php
index e33a011..77a5c1a 100644
--- a/vendor/symfony/http-kernel/Event/FilterControllerEvent.php
+++ b/vendor/symfony/http-kernel/Event/FilterControllerEvent.php
@@ -24,15 +24,11 @@
  * Controllers should be callables.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class FilterControllerEvent extends KernelEvent
 {
     /**
      * The current controller.
-     *
-     * @var callable
      */
     private $controller;
 
@@ -47,8 +43,6 @@ public function __construct(HttpKernelInterface $kernel, $controller, Request $r
      * Returns the current controller.
      *
      * @return callable
-     *
-     * @api
      */
     public function getController()
     {
@@ -61,8 +55,6 @@ public function getController()
      * @param callable $controller
      *
      * @throws \LogicException
-     *
-     * @api
      */
     public function setController($controller)
     {
diff --git a/vendor/symfony/http-kernel/Event/FilterResponseEvent.php b/vendor/symfony/http-kernel/Event/FilterResponseEvent.php
index fd88f87..ed816a9 100644
--- a/vendor/symfony/http-kernel/Event/FilterResponseEvent.php
+++ b/vendor/symfony/http-kernel/Event/FilterResponseEvent.php
@@ -23,8 +23,6 @@
  * browser.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class FilterResponseEvent extends KernelEvent
 {
@@ -46,8 +44,6 @@ public function __construct(HttpKernelInterface $kernel, Request $request, $requ
      * Returns the current response object.
      *
      * @return Response
-     *
-     * @api
      */
     public function getResponse()
     {
@@ -58,8 +54,6 @@ public function getResponse()
      * Sets a new response object.
      *
      * @param Response $response
-     *
-     * @api
      */
     public function setResponse(Response $response)
     {
diff --git a/vendor/symfony/http-kernel/Event/GetResponseEvent.php b/vendor/symfony/http-kernel/Event/GetResponseEvent.php
index b9310fa..4c96a4b 100644
--- a/vendor/symfony/http-kernel/Event/GetResponseEvent.php
+++ b/vendor/symfony/http-kernel/Event/GetResponseEvent.php
@@ -21,8 +21,6 @@
  * response is set.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class GetResponseEvent extends KernelEvent
 {
@@ -37,8 +35,6 @@ class GetResponseEvent extends KernelEvent
      * Returns the response object.
      *
      * @return Response
-     *
-     * @api
      */
     public function getResponse()
     {
@@ -49,8 +45,6 @@ public function getResponse()
      * Sets a response and stops event propagation.
      *
      * @param Response $response
-     *
-     * @api
      */
     public function setResponse(Response $response)
     {
@@ -63,8 +57,6 @@ public function setResponse(Response $response)
      * Returns whether a response was set.
      *
      * @return bool Whether a response was set
-     *
-     * @api
      */
     public function hasResponse()
     {
diff --git a/vendor/symfony/http-kernel/Event/GetResponseForControllerResultEvent.php b/vendor/symfony/http-kernel/Event/GetResponseForControllerResultEvent.php
index afb1c45..f70ce09 100644
--- a/vendor/symfony/http-kernel/Event/GetResponseForControllerResultEvent.php
+++ b/vendor/symfony/http-kernel/Event/GetResponseForControllerResultEvent.php
@@ -22,8 +22,6 @@
  * response is set.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class GetResponseForControllerResultEvent extends GetResponseEvent
 {
@@ -45,8 +43,6 @@ public function __construct(HttpKernelInterface $kernel, Request $request, $requ
      * Returns the return value of the controller.
      *
      * @return mixed The controller return value
-     *
-     * @api
      */
     public function getControllerResult()
     {
@@ -57,8 +53,6 @@ public function getControllerResult()
      * Assigns the return value of the controller.
      *
      * @param mixed $controllerResult The controller return value
-     *
-     * @api
      */
     public function setControllerResult($controllerResult)
     {
diff --git a/vendor/symfony/http-kernel/Event/GetResponseForExceptionEvent.php b/vendor/symfony/http-kernel/Event/GetResponseForExceptionEvent.php
index 3b5957e..003953f 100644
--- a/vendor/symfony/http-kernel/Event/GetResponseForExceptionEvent.php
+++ b/vendor/symfony/http-kernel/Event/GetResponseForExceptionEvent.php
@@ -26,8 +26,6 @@
  * event.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class GetResponseForExceptionEvent extends GetResponseEvent
 {
@@ -49,8 +47,6 @@ public function __construct(HttpKernelInterface $kernel, Request $request, $requ
      * Returns the thrown exception.
      *
      * @return \Exception The thrown exception
-     *
-     * @api
      */
     public function getException()
     {
@@ -63,8 +59,6 @@ public function getException()
      * This exception will be thrown if no response is set in the event.
      *
      * @param \Exception $exception The thrown exception
-     *
-     * @api
      */
     public function setException(\Exception $exception)
     {
diff --git a/vendor/symfony/http-kernel/Event/KernelEvent.php b/vendor/symfony/http-kernel/Event/KernelEvent.php
index 1d97ead..2043a01 100644
--- a/vendor/symfony/http-kernel/Event/KernelEvent.php
+++ b/vendor/symfony/http-kernel/Event/KernelEvent.php
@@ -19,8 +19,6 @@
  * Base class for events thrown in the HttpKernel component.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class KernelEvent extends Event
 {
@@ -57,8 +55,6 @@ public function __construct(HttpKernelInterface $kernel, Request $request, $requ
      * Returns the kernel in which this event was thrown.
      *
      * @return HttpKernelInterface
-     *
-     * @api
      */
     public function getKernel()
     {
@@ -69,8 +65,6 @@ public function getKernel()
      * Returns the request the kernel is currently processing.
      *
      * @return Request
-     *
-     * @api
      */
     public function getRequest()
     {
@@ -82,8 +76,6 @@ public function getRequest()
      *
      * @return int One of HttpKernelInterface::MASTER_REQUEST and
      *             HttpKernelInterface::SUB_REQUEST
-     *
-     * @api
      */
     public function getRequestType()
     {
@@ -94,8 +86,6 @@ public function getRequestType()
      * Checks if this is a master request.
      *
      * @return bool True if the request is a master request
-     *
-     * @api
      */
     public function isMasterRequest()
     {
diff --git a/vendor/symfony/http-kernel/HttpCache/Esi.php b/vendor/symfony/http-kernel/HttpCache/Esi.php
index e40ba02..bc344c6 100644
--- a/vendor/symfony/http-kernel/HttpCache/Esi.php
+++ b/vendor/symfony/http-kernel/HttpCache/Esi.php
@@ -200,7 +200,6 @@ public function renderIncludeTag($uri, $alt = null, $ignoreErrors = true, $comme
      */
     public function process(Request $request, Response $response)
     {
-        $this->request = $request;
         $type = $response->headers->get('Content-Type');
         if (empty($type)) {
             $type = 'text/html';
diff --git a/vendor/symfony/http-kernel/HttpCache/HttpCache.php b/vendor/symfony/http-kernel/HttpCache/HttpCache.php
index f2d9972..a16c740 100644
--- a/vendor/symfony/http-kernel/HttpCache/HttpCache.php
+++ b/vendor/symfony/http-kernel/HttpCache/HttpCache.php
@@ -24,8 +24,6 @@
  * Cache provides HTTP caching.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class HttpCache implements HttpKernelInterface, TerminableInterface
 {
@@ -186,8 +184,6 @@ public function getEsi()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
     {
@@ -216,7 +212,7 @@ public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQ
 
         $this->restoreResponseBody($request, $response);
 
-        $response->setDate(new \DateTime(null, new \DateTimeZone('UTC')));
+        $response->setDate(\DateTime::createFromFormat('U', time(), new \DateTimeZone('UTC')));
 
         if (HttpKernelInterface::MASTER_REQUEST === $type && $this->options['debug']) {
             $response->headers->set('X-Symfony-Cache', $this->getLog());
@@ -239,8 +235,6 @@ public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQ
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function terminate(Request $request, Response $response)
     {
diff --git a/vendor/symfony/http-kernel/HttpCache/Ssi.php b/vendor/symfony/http-kernel/HttpCache/Ssi.php
index 7bb54cf..43311b6 100644
--- a/vendor/symfony/http-kernel/HttpCache/Ssi.php
+++ b/vendor/symfony/http-kernel/HttpCache/Ssi.php
@@ -113,7 +113,6 @@ public function renderIncludeTag($uri, $alt = null, $ignoreErrors = true, $comme
      */
     public function process(Request $request, Response $response)
     {
-        $this->request = $request;
         $type = $response->headers->get('Content-Type');
         if (empty($type)) {
             $type = 'text/html';
diff --git a/vendor/symfony/http-kernel/HttpKernel.php b/vendor/symfony/http-kernel/HttpKernel.php
index 473f780..1600b2c 100644
--- a/vendor/symfony/http-kernel/HttpKernel.php
+++ b/vendor/symfony/http-kernel/HttpKernel.php
@@ -30,8 +30,6 @@
  * HttpKernel notifies events to convert a Request object to a Response one.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class HttpKernel implements HttpKernelInterface, TerminableInterface
 {
@@ -45,8 +43,6 @@ class HttpKernel implements HttpKernelInterface, TerminableInterface
      * @param EventDispatcherInterface    $dispatcher   An EventDispatcherInterface instance
      * @param ControllerResolverInterface $resolver     A ControllerResolverInterface instance
      * @param RequestStack                $requestStack A stack for master/sub requests
-     *
-     * @api
      */
     public function __construct(EventDispatcherInterface $dispatcher, ControllerResolverInterface $resolver, RequestStack $requestStack = null)
     {
@@ -57,8 +53,6 @@ public function __construct(EventDispatcherInterface $dispatcher, ControllerReso
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
     {
@@ -79,8 +73,6 @@ public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQ
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function terminate(Request $request, Response $response)
     {
diff --git a/vendor/symfony/http-kernel/HttpKernelInterface.php b/vendor/symfony/http-kernel/HttpKernelInterface.php
index d09da6b..5050bfc 100644
--- a/vendor/symfony/http-kernel/HttpKernelInterface.php
+++ b/vendor/symfony/http-kernel/HttpKernelInterface.php
@@ -18,8 +18,6 @@
  * HttpKernelInterface handles a Request to convert it to a Response.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface HttpKernelInterface
 {
@@ -40,8 +38,6 @@
      * @return Response A Response instance
      *
      * @throws \Exception When an Exception occurs during processing
-     *
-     * @api
      */
     public function handle(Request $request, $type = self::MASTER_REQUEST, $catch = true);
 }
diff --git a/vendor/symfony/http-kernel/Kernel.php b/vendor/symfony/http-kernel/Kernel.php
index 662428b..a02dcd9 100644
--- a/vendor/symfony/http-kernel/Kernel.php
+++ b/vendor/symfony/http-kernel/Kernel.php
@@ -40,8 +40,6 @@
  * It manages an environment made of bundles.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 abstract class Kernel implements KernelInterface, TerminableInterface
 {
@@ -60,11 +58,11 @@
     protected $startTime;
     protected $loadClassCache;
 
-    const VERSION = '2.7.5';
-    const VERSION_ID = 20705;
+    const VERSION = '2.7.6';
+    const VERSION_ID = 20706;
     const MAJOR_VERSION = 2;
     const MINOR_VERSION = 7;
-    const RELEASE_VERSION = 5;
+    const RELEASE_VERSION = 6;
     const EXTRA_VERSION = '';
 
     const END_OF_MAINTENANCE = '05/2018';
@@ -75,8 +73,6 @@
      *
      * @param string $environment The environment
      * @param bool   $debug       Whether to enable debugging or not
-     *
-     * @api
      */
     public function __construct($environment, $debug)
     {
@@ -118,8 +114,6 @@ public function __clone()
 
     /**
      * Boots the current kernel.
-     *
-     * @api
      */
     public function boot()
     {
@@ -147,8 +141,6 @@ public function boot()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function terminate(Request $request, Response $response)
     {
@@ -163,8 +155,6 @@ public function terminate(Request $request, Response $response)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function shutdown()
     {
@@ -184,8 +174,6 @@ public function shutdown()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
     {
@@ -208,8 +196,6 @@ protected function getHttpKernel()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getBundles()
     {
@@ -219,8 +205,6 @@ public function getBundles()
     /**
      * {@inheritdoc}
      *
-     * @api
-     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function isClassInActiveBundle($class)
@@ -238,8 +222,6 @@ public function isClassInActiveBundle($class)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getBundle($name, $first = true)
     {
@@ -315,8 +297,6 @@ public function locateResource($name, $dir = null, $first = true)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getName()
     {
@@ -329,8 +309,6 @@ public function getName()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getEnvironment()
     {
@@ -339,8 +317,6 @@ public function getEnvironment()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function isDebug()
     {
@@ -349,8 +325,6 @@ public function isDebug()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getRootDir()
     {
@@ -364,8 +338,6 @@ public function getRootDir()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getContainer()
     {
@@ -399,8 +371,6 @@ public function setClassCache(array $classes)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getStartTime()
     {
@@ -409,8 +379,6 @@ public function getStartTime()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getCacheDir()
     {
@@ -419,8 +387,6 @@ public function getCacheDir()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getLogDir()
     {
@@ -429,8 +395,6 @@ public function getLogDir()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getCharset()
     {
diff --git a/vendor/symfony/http-kernel/KernelEvents.php b/vendor/symfony/http-kernel/KernelEvents.php
index e259af5..8768979 100644
--- a/vendor/symfony/http-kernel/KernelEvents.php
+++ b/vendor/symfony/http-kernel/KernelEvents.php
@@ -15,8 +15,6 @@
  * Contains all events thrown in the HttpKernel component.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 final class KernelEvents
 {
@@ -32,8 +30,6 @@
      * @Event
      *
      * @var string
-     *
-     * @api
      */
     const REQUEST = 'kernel.request';
 
@@ -48,8 +44,6 @@
      * @Event
      *
      * @var string
-     *
-     * @api
      */
     const EXCEPTION = 'kernel.exception';
 
@@ -65,8 +59,6 @@
      * @Event
      *
      * @var string
-     *
-     * @api
      */
     const VIEW = 'kernel.view';
 
@@ -81,8 +73,6 @@
      * @Event
      *
      * @var string
-     *
-     * @api
      */
     const CONTROLLER = 'kernel.controller';
 
@@ -97,8 +87,6 @@
      * @Event
      *
      * @var string
-     *
-     * @api
      */
     const RESPONSE = 'kernel.response';
 
diff --git a/vendor/symfony/http-kernel/KernelInterface.php b/vendor/symfony/http-kernel/KernelInterface.php
index 06c3c0c..ee5d273 100644
--- a/vendor/symfony/http-kernel/KernelInterface.php
+++ b/vendor/symfony/http-kernel/KernelInterface.php
@@ -21,8 +21,6 @@
  * It manages an environment made of bundles.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface KernelInterface extends HttpKernelInterface, \Serializable
 {
@@ -30,8 +28,6 @@
      * Returns an array of bundles to register.
      *
      * @return BundleInterface[] An array of bundle instances.
-     *
-     * @api
      */
     public function registerBundles();
 
@@ -39,15 +35,11 @@ public function registerBundles();
      * Loads the container configuration.
      *
      * @param LoaderInterface $loader A LoaderInterface instance
-     *
-     * @api
      */
     public function registerContainerConfiguration(LoaderInterface $loader);
 
     /**
      * Boots the current kernel.
-     *
-     * @api
      */
     public function boot();
 
@@ -55,8 +47,6 @@ public function boot();
      * Shutdowns the kernel.
      *
      * This method is mainly useful when doing functional testing.
-     *
-     * @api
      */
     public function shutdown();
 
@@ -64,8 +54,6 @@ public function shutdown();
      * Gets the registered bundle instances.
      *
      * @return BundleInterface[] An array of registered bundle instances
-     *
-     * @api
      */
     public function getBundles();
 
@@ -76,8 +64,6 @@ public function getBundles();
      *
      * @return bool true if the class belongs to an active bundle, false otherwise
      *
-     * @api
-     *
      * @deprecated since version 2.6, to be removed in 3.0.
      */
     public function isClassInActiveBundle($class);
@@ -91,8 +77,6 @@ public function isClassInActiveBundle($class);
      * @return BundleInterface|BundleInterface[] A BundleInterface instance or an array of BundleInterface instances if $first is false
      *
      * @throws \InvalidArgumentException when the bundle is not enabled
-     *
-     * @api
      */
     public function getBundle($name, $first = true);
 
@@ -123,8 +107,6 @@ public function getBundle($name, $first = true);
      *
      * @throws \InvalidArgumentException if the file cannot be found or the name is not valid
      * @throws \RuntimeException         if the name contains invalid/unsafe characters
-     *
-     * @api
      */
     public function locateResource($name, $dir = null, $first = true);
 
@@ -132,8 +114,6 @@ public function locateResource($name, $dir = null, $first = true);
      * Gets the name of the kernel.
      *
      * @return string The kernel name
-     *
-     * @api
      */
     public function getName();
 
@@ -141,8 +121,6 @@ public function getName();
      * Gets the environment.
      *
      * @return string The current environment
-     *
-     * @api
      */
     public function getEnvironment();
 
@@ -150,8 +128,6 @@ public function getEnvironment();
      * Checks if debug mode is enabled.
      *
      * @return bool true if debug mode is enabled, false otherwise
-     *
-     * @api
      */
     public function isDebug();
 
@@ -159,8 +135,6 @@ public function isDebug();
      * Gets the application root dir.
      *
      * @return string The application root dir
-     *
-     * @api
      */
     public function getRootDir();
 
@@ -168,8 +142,6 @@ public function getRootDir();
      * Gets the current container.
      *
      * @return ContainerInterface A ContainerInterface instance
-     *
-     * @api
      */
     public function getContainer();
 
@@ -177,8 +149,6 @@ public function getContainer();
      * Gets the request start time (not available if debug is disabled).
      *
      * @return int The request start timestamp
-     *
-     * @api
      */
     public function getStartTime();
 
@@ -186,8 +156,6 @@ public function getStartTime();
      * Gets the cache directory.
      *
      * @return string The cache directory
-     *
-     * @api
      */
     public function getCacheDir();
 
@@ -195,8 +163,6 @@ public function getCacheDir();
      * Gets the log directory.
      *
      * @return string The log directory
-     *
-     * @api
      */
     public function getLogDir();
 
@@ -204,8 +170,6 @@ public function getLogDir();
      * Gets the charset of the application.
      *
      * @return string The charset
-     *
-     * @api
      */
     public function getCharset();
 }
diff --git a/vendor/symfony/http-kernel/Log/LoggerInterface.php b/vendor/symfony/http-kernel/Log/LoggerInterface.php
index 737ba4e..cad38e5 100644
--- a/vendor/symfony/http-kernel/Log/LoggerInterface.php
+++ b/vendor/symfony/http-kernel/Log/LoggerInterface.php
@@ -19,35 +19,25 @@
  * @author Fabien Potencier <fabien@symfony.com>
  *
  * @deprecated since version 2.2, to be removed in 3.0. Type-hint \Psr\Log\LoggerInterface instead.
- *
- * @api
  */
 interface LoggerInterface extends PsrLogger
 {
     /**
-     * @api
-     *
      * @deprecated since version 2.2, to be removed in 3.0. Use emergency() which is PSR-3 compatible.
      */
     public function emerg($message, array $context = array());
 
     /**
-     * @api
-     *
      * @deprecated since version 2.2, to be removed in 3.0. Use critical() which is PSR-3 compatible.
      */
     public function crit($message, array $context = array());
 
     /**
-     * @api
-     *
      * @deprecated since version 2.2, to be removed in 3.0. Use error() which is PSR-3 compatible.
      */
     public function err($message, array $context = array());
 
     /**
-     * @api
-     *
      * @deprecated since version 2.2, to be removed in 3.0. Use warning() which is PSR-3 compatible.
      */
     public function warn($message, array $context = array());
diff --git a/vendor/symfony/http-kernel/Log/NullLogger.php b/vendor/symfony/http-kernel/Log/NullLogger.php
index b9e3ac4..36a857d 100644
--- a/vendor/symfony/http-kernel/Log/NullLogger.php
+++ b/vendor/symfony/http-kernel/Log/NullLogger.php
@@ -19,38 +19,24 @@
  * NullLogger.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class NullLogger extends PsrNullLogger implements LoggerInterface
 {
-    /**
-     * @api
-     */
     public function emerg($message, array $context = array())
     {
         @trigger_error('The '.__METHOD__.' method is deprecated since version 2.2 and will be removed in 3.0. You should use the new emergency() method instead, which is PSR-3 compatible.', E_USER_DEPRECATED);
     }
 
-    /**
-     * @api
-     */
     public function crit($message, array $context = array())
     {
         @trigger_error('The '.__METHOD__.' method is deprecated since version 2.2 and will be removed in 3.0. You should use the new critical() method instead, which is PSR-3 compatible.', E_USER_DEPRECATED);
     }
 
-    /**
-     * @api
-     */
     public function err($message, array $context = array())
     {
         @trigger_error('The '.__METHOD__.' method is deprecated since version 2.2 and will be removed in 3.0. You should use the new error() method instead, which is PSR-3 compatible.', E_USER_DEPRECATED);
     }
 
-    /**
-     * @api
-     */
     public function warn($message, array $context = array())
     {
         @trigger_error('The '.__METHOD__.' method is deprecated since version 2.2 and will be removed in 3.0. You should use the new warning() method instead, which is PSR-3 compatible.', E_USER_DEPRECATED);
diff --git a/vendor/symfony/http-kernel/TerminableInterface.php b/vendor/symfony/http-kernel/TerminableInterface.php
index fc0e580..d55a15b 100644
--- a/vendor/symfony/http-kernel/TerminableInterface.php
+++ b/vendor/symfony/http-kernel/TerminableInterface.php
@@ -20,8 +20,6 @@
  *
  * @author Jordi Boggiano <j.boggiano@seld.be>
  * @author Pierre Minnieur <pierre.minnieur@sensiolabs.de>
- *
- * @api
  */
 interface TerminableInterface
 {
@@ -32,8 +30,6 @@
      *
      * @param Request  $request  A Request instance
      * @param Response $response A Response instance
-     *
-     * @api
      */
     public function terminate(Request $request, Response $response);
 }
diff --git a/vendor/symfony/http-kernel/composer.json b/vendor/symfony/http-kernel/composer.json
index a63b6b3..623d732 100644
--- a/vendor/symfony/http-kernel/composer.json
+++ b/vendor/symfony/http-kernel/composer.json
@@ -23,7 +23,6 @@
         "psr/log": "~1.0"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
         "symfony/browser-kit": "~2.3",
         "symfony/class-loader": "~2.1",
         "symfony/config": "~2.7",
diff --git a/vendor/symfony/process/ExecutableFinder.php b/vendor/symfony/process/ExecutableFinder.php
index a9c0a5c..fa11cb6 100644
--- a/vendor/symfony/process/ExecutableFinder.php
+++ b/vendor/symfony/process/ExecutableFinder.php
@@ -56,7 +56,8 @@ public function find($name, $default = null, array $extraDirs = array())
             $searchPath = explode(PATH_SEPARATOR, ini_get('open_basedir'));
             $dirs = array();
             foreach ($searchPath as $path) {
-                if (is_dir($path)) {
+                // Silencing against https://bugs.php.net/69240
+                if (@is_dir($path)) {
                     $dirs[] = $path;
                 } else {
                     if (basename($path) == $name && is_executable($path)) {
diff --git a/vendor/symfony/process/PhpProcess.php b/vendor/symfony/process/PhpProcess.php
index 6a58587..1adbd97 100644
--- a/vendor/symfony/process/PhpProcess.php
+++ b/vendor/symfony/process/PhpProcess.php
@@ -21,23 +21,19 @@
  * print $p->getOutput()."\n";
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class PhpProcess extends Process
 {
     /**
      * 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
+     * @param string      $script  The PHP script to run (as a string)
+     * @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 use the same environment as the current PHP process
+     * @param int         $timeout The timeout in seconds
+     * @param array       $options An array of options for proc_open
      */
-    public function __construct($script, $cwd = null, array $env = array(), $timeout = 60, array $options = array())
+    public function __construct($script, $cwd = null, array $env = null, $timeout = 60, array $options = array())
     {
         $executableFinder = new PhpExecutableFinder();
         if (false === $php = $executableFinder->find()) {
@@ -49,8 +45,6 @@ public function __construct($script, $cwd = null, array $env = array(), $timeout
 
     /**
      * Sets the path to the PHP binary to use.
-     *
-     * @api
      */
     public function setPhpBinary($php)
     {
diff --git a/vendor/symfony/process/Pipes/WindowsPipes.php b/vendor/symfony/process/Pipes/WindowsPipes.php
index b20f3ec..1472f8c 100644
--- a/vendor/symfony/process/Pipes/WindowsPipes.php
+++ b/vendor/symfony/process/Pipes/WindowsPipes.php
@@ -48,12 +48,11 @@ public function __construct($disableOutput, $input)
             //
             // @see https://bugs.php.net/bug.php?id=51800
             $this->files = array(
-                Process::STDOUT => tempnam(sys_get_temp_dir(), 'sf_proc_stdout'),
-                Process::STDERR => tempnam(sys_get_temp_dir(), 'sf_proc_stderr'),
+                Process::STDOUT => tempnam(sys_get_temp_dir(), 'out_sf_proc'),
+                Process::STDERR => tempnam(sys_get_temp_dir(), 'err_sf_proc'),
             );
             foreach ($this->files as $offset => $file) {
-                $this->fileHandles[$offset] = fopen($this->files[$offset], 'rb');
-                if (false === $this->fileHandles[$offset]) {
+                if (false === $file || false === $this->fileHandles[$offset] = fopen($file, 'rb')) {
                     throw new RuntimeException('A temporary file could not be opened to write the process output to, verify that your TEMP environment variable is writable');
                 }
             }
diff --git a/vendor/symfony/process/Process.php b/vendor/symfony/process/Process.php
index f87792b..699151f 100644
--- a/vendor/symfony/process/Process.php
+++ b/vendor/symfony/process/Process.php
@@ -26,8 +26,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Romain Neutron <imprec@gmail.com>
- *
- * @api
  */
 class Process
 {
@@ -133,14 +131,12 @@ class Process
      *
      * @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 array|null     $env         The environment variables or null to use the same environment as the current PHP process
      * @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())
     {
@@ -200,8 +196,6 @@ public function __clone()
      * @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)
     {
@@ -463,8 +457,6 @@ public function isOutputDisabled()
      *
      * @throws LogicException in case the output has been disabled
      * @throws LogicException In case the process is not started
-     *
-     * @api
      */
     public function getOutput()
     {
@@ -527,8 +519,6 @@ public function clearOutput()
      *
      * @throws LogicException in case the output has been disabled
      * @throws LogicException In case the process is not started
-     *
-     * @api
      */
     public function getErrorOutput()
     {
@@ -591,8 +581,6 @@ public function clearErrorOutput()
      * @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()
     {
@@ -631,8 +619,6 @@ public function getExitCodeText()
      * Checks if the process ended successfully.
      *
      * @return bool true if the process ended successfully, false otherwise
-     *
-     * @api
      */
     public function isSuccessful()
     {
@@ -648,8 +634,6 @@ public function isSuccessful()
      *
      * @throws RuntimeException In case --enable-sigchild is activated
      * @throws LogicException   In case the process is not terminated
-     *
-     * @api
      */
     public function hasBeenSignaled()
     {
@@ -673,8 +657,6 @@ public function hasBeenSignaled()
      *
      * @throws RuntimeException In case --enable-sigchild is activated
      * @throws LogicException   In case the process is not terminated
-     *
-     * @api
      */
     public function getTermSignal()
     {
@@ -697,8 +679,6 @@ public function getTermSignal()
      * @return bool
      *
      * @throws LogicException In case the process is not terminated
-     *
-     * @api
      */
     public function hasBeenStopped()
     {
@@ -717,8 +697,6 @@ public function hasBeenStopped()
      * @return int
      *
      * @throws LogicException In case the process is not terminated
-     *
-     * @api
      */
     public function getStopSignal()
     {
@@ -1052,7 +1030,7 @@ public function setEnv(array $env)
 
         $this->env = array();
         foreach ($env as $key => $value) {
-            $this->env[(binary) $key] = (binary) $value;
+            $this->env[$key] = (string) $value;
         }
 
         return $this;
@@ -1292,7 +1270,7 @@ private function getDescriptors()
      *
      * @param callable|null $callback The user defined PHP callback
      *
-     * @return callable A PHP callable
+     * @return \Closure A PHP closure
      */
     protected function buildCallback($callback)
     {
diff --git a/vendor/symfony/process/README.md b/vendor/symfony/process/README.md
index 7c83ed4..7222fe8 100644
--- a/vendor/symfony/process/README.md
+++ b/vendor/symfony/process/README.md
@@ -7,12 +7,13 @@ In this example, we run a simple directory listing and get the result back:
 
 ```php
 use Symfony\Component\Process\Process;
+use Symfony\Component\Process\Exception\ProcessFailedException;
 
 $process = new Process('ls -lsa');
 $process->setTimeout(3600);
 $process->run();
 if (!$process->isSuccessful()) {
-    throw new RuntimeException($process->getErrorOutput());
+    throw new ProcessFailedException($process);
 }
 
 print $process->getOutput();
@@ -21,6 +22,19 @@ 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.
 
+You can simplify the code by using `mustRun()` instead of `run()`, which will
+throw a `ProcessFailedException` automatically in case of a problem:
+
+```php
+use Symfony\Component\Process\Process;
+
+$process = new Process('ls -lsa');
+$process->setTimeout(3600);
+$process->mustRun();
+
+print $process->getOutput();
+```
+
 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:
diff --git a/vendor/symfony/process/composer.json b/vendor/symfony/process/composer.json
index d0cae4d..8d21baf 100644
--- a/vendor/symfony/process/composer.json
+++ b/vendor/symfony/process/composer.json
@@ -18,9 +18,6 @@
     "require": {
         "php": ">=5.3.9"
     },
-    "require-dev": {
-        "symfony/phpunit-bridge": "~2.7"
-    },
     "autoload": {
         "psr-4": { "Symfony\\Component\\Process\\": "" }
     },
diff --git a/vendor/symfony/routing/Exception/ExceptionInterface.php b/vendor/symfony/routing/Exception/ExceptionInterface.php
index 9fcd224..db76362 100644
--- a/vendor/symfony/routing/Exception/ExceptionInterface.php
+++ b/vendor/symfony/routing/Exception/ExceptionInterface.php
@@ -15,8 +15,6 @@
  * ExceptionInterface.
  *
  * @author Alexandre Salomé <alexandre.salome@gmail.com>
- *
- * @api
  */
 interface ExceptionInterface
 {
diff --git a/vendor/symfony/routing/Exception/InvalidParameterException.php b/vendor/symfony/routing/Exception/InvalidParameterException.php
index ae37c34..94d841f 100644
--- a/vendor/symfony/routing/Exception/InvalidParameterException.php
+++ b/vendor/symfony/routing/Exception/InvalidParameterException.php
@@ -15,8 +15,6 @@
  * Exception thrown when a parameter is not valid.
  *
  * @author Alexandre Salomé <alexandre.salome@gmail.com>
- *
- * @api
  */
 class InvalidParameterException extends \InvalidArgumentException implements ExceptionInterface
 {
diff --git a/vendor/symfony/routing/Exception/MethodNotAllowedException.php b/vendor/symfony/routing/Exception/MethodNotAllowedException.php
index 32f1091..f684c74 100644
--- a/vendor/symfony/routing/Exception/MethodNotAllowedException.php
+++ b/vendor/symfony/routing/Exception/MethodNotAllowedException.php
@@ -17,8 +17,6 @@
  * This exception should trigger an HTTP 405 response in your application code.
  *
  * @author Kris Wallsmith <kris@symfony.com>
- *
- * @api
  */
 class MethodNotAllowedException extends \RuntimeException implements ExceptionInterface
 {
diff --git a/vendor/symfony/routing/Exception/MissingMandatoryParametersException.php b/vendor/symfony/routing/Exception/MissingMandatoryParametersException.php
index 5a523fa..57f3a40 100644
--- a/vendor/symfony/routing/Exception/MissingMandatoryParametersException.php
+++ b/vendor/symfony/routing/Exception/MissingMandatoryParametersException.php
@@ -16,8 +16,6 @@
  * mandatory parameters.
  *
  * @author Alexandre Salomé <alexandre.salome@gmail.com>
- *
- * @api
  */
 class MissingMandatoryParametersException extends \InvalidArgumentException implements ExceptionInterface
 {
diff --git a/vendor/symfony/routing/Exception/ResourceNotFoundException.php b/vendor/symfony/routing/Exception/ResourceNotFoundException.php
index 362a0d6..ccbca15 100644
--- a/vendor/symfony/routing/Exception/ResourceNotFoundException.php
+++ b/vendor/symfony/routing/Exception/ResourceNotFoundException.php
@@ -17,8 +17,6 @@
  * This exception should trigger an HTTP 404 response in your application code.
  *
  * @author Kris Wallsmith <kris@symfony.com>
- *
- * @api
  */
 class ResourceNotFoundException extends \RuntimeException implements ExceptionInterface
 {
diff --git a/vendor/symfony/routing/Exception/RouteNotFoundException.php b/vendor/symfony/routing/Exception/RouteNotFoundException.php
index 8059e45..24ab0b4 100644
--- a/vendor/symfony/routing/Exception/RouteNotFoundException.php
+++ b/vendor/symfony/routing/Exception/RouteNotFoundException.php
@@ -15,8 +15,6 @@
  * Exception thrown when a route does not exist.
  *
  * @author Alexandre Salomé <alexandre.salome@gmail.com>
- *
- * @api
  */
 class RouteNotFoundException extends \InvalidArgumentException implements ExceptionInterface
 {
diff --git a/vendor/symfony/routing/Generator/Dumper/GeneratorDumperInterface.php b/vendor/symfony/routing/Generator/Dumper/GeneratorDumperInterface.php
index deb0c0a..fed3472 100644
--- a/vendor/symfony/routing/Generator/Dumper/GeneratorDumperInterface.php
+++ b/vendor/symfony/routing/Generator/Dumper/GeneratorDumperInterface.php
@@ -17,8 +17,6 @@
  * GeneratorDumperInterface is the interface that all generator dumper classes must implement.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface GeneratorDumperInterface
 {
diff --git a/vendor/symfony/routing/Generator/Dumper/PhpGeneratorDumper.php b/vendor/symfony/routing/Generator/Dumper/PhpGeneratorDumper.php
index 9b7e483..b53caaf 100644
--- a/vendor/symfony/routing/Generator/Dumper/PhpGeneratorDumper.php
+++ b/vendor/symfony/routing/Generator/Dumper/PhpGeneratorDumper.php
@@ -16,8 +16,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Tobias Schultze <http://tobion.de>
- *
- * @api
  */
 class PhpGeneratorDumper extends GeneratorDumper
 {
@@ -32,8 +30,6 @@ class PhpGeneratorDumper extends GeneratorDumper
      * @param array $options An array of options
      *
      * @return string A PHP class representing the generator class
-     *
-     * @api
      */
     public function dump(array $options = array())
     {
diff --git a/vendor/symfony/routing/Generator/UrlGenerator.php b/vendor/symfony/routing/Generator/UrlGenerator.php
index 5fe943b..6798951 100644
--- a/vendor/symfony/routing/Generator/UrlGenerator.php
+++ b/vendor/symfony/routing/Generator/UrlGenerator.php
@@ -24,8 +24,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Tobias Schultze <http://tobion.de>
- *
- * @api
  */
 class UrlGenerator implements UrlGeneratorInterface, ConfigurableRequirementsInterface
 {
@@ -83,8 +81,6 @@ class UrlGenerator implements UrlGeneratorInterface, ConfigurableRequirementsInt
      * @param RouteCollection      $routes  A RouteCollection instance
      * @param RequestContext       $context The context
      * @param LoggerInterface|null $logger  A logger instance
-     *
-     * @api
      */
     public function __construct(RouteCollection $routes, RequestContext $context, LoggerInterface $logger = null)
     {
diff --git a/vendor/symfony/routing/Generator/UrlGeneratorInterface.php b/vendor/symfony/routing/Generator/UrlGeneratorInterface.php
index a70c90a..fc294b7 100644
--- a/vendor/symfony/routing/Generator/UrlGeneratorInterface.php
+++ b/vendor/symfony/routing/Generator/UrlGeneratorInterface.php
@@ -28,8 +28,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Tobias Schultze <http://tobion.de>
- *
- * @api
  */
 interface UrlGeneratorInterface extends RequestContextAwareInterface
 {
@@ -81,8 +79,6 @@
      * @throws MissingMandatoryParametersException When some parameters are missing that are mandatory for the route
      * @throws InvalidParameterException           When a parameter value for a placeholder is not correct because
      *                                             it does not match the requirement
-     *
-     * @api
      */
     public function generate($name, $parameters = array(), $referenceType = self::ABSOLUTE_PATH);
 }
diff --git a/vendor/symfony/routing/Loader/ClosureLoader.php b/vendor/symfony/routing/Loader/ClosureLoader.php
index 9edab1e..5df9f6a 100644
--- a/vendor/symfony/routing/Loader/ClosureLoader.php
+++ b/vendor/symfony/routing/Loader/ClosureLoader.php
@@ -20,8 +20,6 @@
  * The Closure must return a RouteCollection instance.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class ClosureLoader extends Loader
 {
@@ -32,8 +30,6 @@ class ClosureLoader extends Loader
      * @param string|null $type    The resource type
      *
      * @return RouteCollection A RouteCollection instance
-     *
-     * @api
      */
     public function load($closure, $type = null)
     {
@@ -42,8 +38,6 @@ public function load($closure, $type = null)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function supports($resource, $type = null)
     {
diff --git a/vendor/symfony/routing/Loader/PhpFileLoader.php b/vendor/symfony/routing/Loader/PhpFileLoader.php
index d1970e5..b4ba5fb 100644
--- a/vendor/symfony/routing/Loader/PhpFileLoader.php
+++ b/vendor/symfony/routing/Loader/PhpFileLoader.php
@@ -21,8 +21,6 @@
  * The file must return a RouteCollection instance.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class PhpFileLoader extends FileLoader
 {
@@ -33,8 +31,6 @@ class PhpFileLoader extends FileLoader
      * @param string|null $type The resource type
      *
      * @return RouteCollection A RouteCollection instance
-     *
-     * @api
      */
     public function load($file, $type = null)
     {
@@ -49,8 +45,6 @@ public function load($file, $type = null)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function supports($resource, $type = null)
     {
diff --git a/vendor/symfony/routing/Loader/XmlFileLoader.php b/vendor/symfony/routing/Loader/XmlFileLoader.php
index e8c7f6b..b5c24f9 100644
--- a/vendor/symfony/routing/Loader/XmlFileLoader.php
+++ b/vendor/symfony/routing/Loader/XmlFileLoader.php
@@ -22,8 +22,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Tobias Schultze <http://tobion.de>
- *
- * @api
  */
 class XmlFileLoader extends FileLoader
 {
@@ -40,8 +38,6 @@ class XmlFileLoader extends FileLoader
      *
      * @throws \InvalidArgumentException When the file cannot be loaded or when the XML cannot be
      *                                   parsed because it does not validate against the scheme.
-     *
-     * @api
      */
     public function load($file, $type = null)
     {
@@ -94,8 +90,6 @@ protected function parseNode(RouteCollection $collection, \DOMElement $node, $pa
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function supports($resource, $type = null)
     {
diff --git a/vendor/symfony/routing/Loader/YamlFileLoader.php b/vendor/symfony/routing/Loader/YamlFileLoader.php
index 4ae71ac..817714a 100644
--- a/vendor/symfony/routing/Loader/YamlFileLoader.php
+++ b/vendor/symfony/routing/Loader/YamlFileLoader.php
@@ -23,8 +23,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Tobias Schultze <http://tobion.de>
- *
- * @api
  */
 class YamlFileLoader extends FileLoader
 {
@@ -42,8 +40,6 @@ class YamlFileLoader extends FileLoader
      * @return RouteCollection A RouteCollection instance
      *
      * @throws \InvalidArgumentException When a route can't be parsed because YAML is invalid
-     *
-     * @api
      */
     public function load($file, $type = null)
     {
@@ -62,7 +58,7 @@ public function load($file, $type = null)
         }
 
         try {
-            $config = $this->yamlParser->parse(file_get_contents($path));
+            $parsedConfig = $this->yamlParser->parse(file_get_contents($path));
         } catch (ParseException $e) {
             throw new \InvalidArgumentException(sprintf('The file "%s" does not contain valid YAML.', $path), 0, $e);
         }
@@ -71,16 +67,16 @@ public function load($file, $type = null)
         $collection->addResource(new FileResource($path));
 
         // empty file
-        if (null === $config) {
+        if (null === $parsedConfig) {
             return $collection;
         }
 
         // not an array
-        if (!is_array($config)) {
+        if (!is_array($parsedConfig)) {
             throw new \InvalidArgumentException(sprintf('The file "%s" must contain a YAML array.', $path));
         }
 
-        foreach ($config as $name => $config) {
+        foreach ($parsedConfig as $name => $config) {
             if (isset($config['pattern'])) {
                 if (isset($config['path'])) {
                     throw new \InvalidArgumentException(sprintf('The file "%s" cannot define both a "path" and a "pattern" attribute. Use only "path".', $path));
@@ -106,8 +102,6 @@ public function load($file, $type = null)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function supports($resource, $type = null)
     {
diff --git a/vendor/symfony/routing/Matcher/Dumper/DumperCollection.php b/vendor/symfony/routing/Matcher/Dumper/DumperCollection.php
index f91df98..e7dea88 100644
--- a/vendor/symfony/routing/Matcher/Dumper/DumperCollection.php
+++ b/vendor/symfony/routing/Matcher/Dumper/DumperCollection.php
@@ -15,6 +15,8 @@
  * Collection of routes.
  *
  * @author Arnaud Le Blanc <arnaud.lb@gmail.com>
+ *
+ * @internal
  */
 class DumperCollection implements \IteratorAggregate
 {
diff --git a/vendor/symfony/routing/Matcher/Dumper/DumperPrefixCollection.php b/vendor/symfony/routing/Matcher/Dumper/DumperPrefixCollection.php
index 6a615f2..dd1a0d9 100644
--- a/vendor/symfony/routing/Matcher/Dumper/DumperPrefixCollection.php
+++ b/vendor/symfony/routing/Matcher/Dumper/DumperPrefixCollection.php
@@ -15,6 +15,8 @@
  * Prefix tree of routes preserving routes order.
  *
  * @author Arnaud Le Blanc <arnaud.lb@gmail.com>
+ *
+ * @internal
  */
 class DumperPrefixCollection extends DumperCollection
 {
diff --git a/vendor/symfony/routing/Matcher/Dumper/DumperRoute.php b/vendor/symfony/routing/Matcher/Dumper/DumperRoute.php
index 2928cdc..3ad08c2 100644
--- a/vendor/symfony/routing/Matcher/Dumper/DumperRoute.php
+++ b/vendor/symfony/routing/Matcher/Dumper/DumperRoute.php
@@ -17,6 +17,8 @@
  * Container for a Route.
  *
  * @author Arnaud Le Blanc <arnaud.lb@gmail.com>
+ *
+ * @internal
  */
 class DumperRoute
 {
diff --git a/vendor/symfony/routing/Matcher/RedirectableUrlMatcher.php b/vendor/symfony/routing/Matcher/RedirectableUrlMatcher.php
index 236f55a..463bc0d 100644
--- a/vendor/symfony/routing/Matcher/RedirectableUrlMatcher.php
+++ b/vendor/symfony/routing/Matcher/RedirectableUrlMatcher.php
@@ -16,8 +16,6 @@
 
 /**
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 abstract class RedirectableUrlMatcher extends UrlMatcher implements RedirectableUrlMatcherInterface
 {
diff --git a/vendor/symfony/routing/Matcher/RedirectableUrlMatcherInterface.php b/vendor/symfony/routing/Matcher/RedirectableUrlMatcherInterface.php
index ea91e07..4dd8969 100644
--- a/vendor/symfony/routing/Matcher/RedirectableUrlMatcherInterface.php
+++ b/vendor/symfony/routing/Matcher/RedirectableUrlMatcherInterface.php
@@ -15,8 +15,6 @@
  * RedirectableUrlMatcherInterface knows how to redirect the user.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface RedirectableUrlMatcherInterface
 {
@@ -28,8 +26,6 @@
      * @param string|null $scheme The URL scheme (null to keep the current one)
      *
      * @return array An array of parameters
-     *
-     * @api
      */
     public function redirect($path, $route, $scheme = null);
 }
diff --git a/vendor/symfony/routing/Matcher/UrlMatcher.php b/vendor/symfony/routing/Matcher/UrlMatcher.php
index c754144..9786a9b 100644
--- a/vendor/symfony/routing/Matcher/UrlMatcher.php
+++ b/vendor/symfony/routing/Matcher/UrlMatcher.php
@@ -24,8 +24,6 @@
  * UrlMatcher matches URL based on a set of routes.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class UrlMatcher implements UrlMatcherInterface, RequestMatcherInterface
 {
@@ -61,8 +59,6 @@ class UrlMatcher implements UrlMatcherInterface, RequestMatcherInterface
      *
      * @param RouteCollection $routes  A RouteCollection instance
      * @param RequestContext  $context The context
-     *
-     * @api
      */
     public function __construct(RouteCollection $routes, RequestContext $context)
     {
diff --git a/vendor/symfony/routing/Matcher/UrlMatcherInterface.php b/vendor/symfony/routing/Matcher/UrlMatcherInterface.php
index dd718b1..af38662 100644
--- a/vendor/symfony/routing/Matcher/UrlMatcherInterface.php
+++ b/vendor/symfony/routing/Matcher/UrlMatcherInterface.php
@@ -19,8 +19,6 @@
  * UrlMatcherInterface is the interface that all URL matcher classes must implement.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface UrlMatcherInterface extends RequestContextAwareInterface
 {
@@ -36,8 +34,6 @@
      *
      * @throws ResourceNotFoundException If the resource could not be found
      * @throws MethodNotAllowedException If the resource was found but the request method is not allowed
-     *
-     * @api
      */
     public function match($pathinfo);
 }
diff --git a/vendor/symfony/routing/RequestContext.php b/vendor/symfony/routing/RequestContext.php
index 577d1d0..862b824 100644
--- a/vendor/symfony/routing/RequestContext.php
+++ b/vendor/symfony/routing/RequestContext.php
@@ -20,8 +20,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Tobias Schultze <http://tobion.de>
- *
- * @api
  */
 class RequestContext
 {
@@ -50,8 +48,6 @@ class RequestContext
      * @param int    $httpsPort   The HTTPS port
      * @param string $path        The path
      * @param string $queryString The query string
-     *
-     * @api
      */
     public function __construct($baseUrl = '', $method = 'GET', $host = 'localhost', $scheme = 'http', $httpPort = 80, $httpsPort = 443, $path = '/', $queryString = '')
     {
@@ -102,8 +98,6 @@ public function getBaseUrl()
      * @param string $baseUrl The base URL
      *
      * @return RequestContext The current instance, implementing a fluent interface
-     *
-     * @api
      */
     public function setBaseUrl($baseUrl)
     {
@@ -154,8 +148,6 @@ public function getMethod()
      * @param string $method The HTTP method
      *
      * @return RequestContext The current instance, implementing a fluent interface
-     *
-     * @api
      */
     public function setMethod($method)
     {
@@ -182,8 +174,6 @@ public function getHost()
      * @param string $host The HTTP host
      *
      * @return RequestContext The current instance, implementing a fluent interface
-     *
-     * @api
      */
     public function setHost($host)
     {
@@ -208,8 +198,6 @@ public function getScheme()
      * @param string $scheme The HTTP scheme
      *
      * @return RequestContext The current instance, implementing a fluent interface
-     *
-     * @api
      */
     public function setScheme($scheme)
     {
@@ -234,8 +222,6 @@ public function getHttpPort()
      * @param int $httpPort The HTTP port
      *
      * @return RequestContext The current instance, implementing a fluent interface
-     *
-     * @api
      */
     public function setHttpPort($httpPort)
     {
@@ -260,8 +246,6 @@ public function getHttpsPort()
      * @param int $httpsPort The HTTPS port
      *
      * @return RequestContext The current instance, implementing a fluent interface
-     *
-     * @api
      */
     public function setHttpsPort($httpsPort)
     {
@@ -286,8 +270,6 @@ public function getQueryString()
      * @param string $queryString The query string (after "?")
      *
      * @return RequestContext The current instance, implementing a fluent interface
-     *
-     * @api
      */
     public function setQueryString($queryString)
     {
@@ -352,8 +334,6 @@ public function hasParameter($name)
      * @param mixed  $parameter The parameter value
      *
      * @return RequestContext The current instance, implementing a fluent interface
-     *
-     * @api
      */
     public function setParameter($name, $parameter)
     {
diff --git a/vendor/symfony/routing/RequestContextAwareInterface.php b/vendor/symfony/routing/RequestContextAwareInterface.php
index daf5254..ebb0ef4 100644
--- a/vendor/symfony/routing/RequestContextAwareInterface.php
+++ b/vendor/symfony/routing/RequestContextAwareInterface.php
@@ -11,17 +11,12 @@
 
 namespace Symfony\Component\Routing;
 
-/**
- * @api
- */
 interface RequestContextAwareInterface
 {
     /**
      * Sets the request context.
      *
      * @param RequestContext $context The context
-     *
-     * @api
      */
     public function setContext(RequestContext $context);
 
@@ -29,8 +24,6 @@ public function setContext(RequestContext $context);
      * Gets the request context.
      *
      * @return RequestContext The context
-     *
-     * @api
      */
     public function getContext();
 }
diff --git a/vendor/symfony/routing/Route.php b/vendor/symfony/routing/Route.php
index 19a48f1..b485bde 100644
--- a/vendor/symfony/routing/Route.php
+++ b/vendor/symfony/routing/Route.php
@@ -16,8 +16,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Tobias Schultze <http://tobion.de>
- *
- * @api
  */
 class Route implements \Serializable
 {
@@ -81,8 +79,6 @@ class Route implements \Serializable
      * @param string|array $schemes      A required URI scheme or an array of restricted schemes
      * @param string|array $methods      A required HTTP method or an array of restricted methods
      * @param string       $condition    A condition that should evaluate to true for the route to match
-     *
-     * @api
      */
     public function __construct($path, array $defaults = array(), array $requirements = array(), array $options = array(), $host = '', $schemes = array(), $methods = array(), $condition = '')
     {
@@ -372,8 +368,6 @@ public function addOptions(array $options)
      * @param mixed  $value The option value
      *
      * @return Route The current Route instance
-     *
-     * @api
      */
     public function setOption($name, $value)
     {
@@ -483,8 +477,6 @@ public function hasDefault($name)
      * @param mixed  $default The default value
      *
      * @return Route The current Route instance
-     *
-     * @api
      */
     public function setDefault($name, $default)
     {
@@ -576,8 +568,6 @@ public function hasRequirement($key)
      * @param string $regex The regex
      *
      * @return Route The current Route instance
-     *
-     * @api
      */
     public function setRequirement($key, $regex)
     {
diff --git a/vendor/symfony/routing/RouteCollection.php b/vendor/symfony/routing/RouteCollection.php
index df37f36..d6ac840 100644
--- a/vendor/symfony/routing/RouteCollection.php
+++ b/vendor/symfony/routing/RouteCollection.php
@@ -22,8 +22,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Tobias Schultze <http://tobion.de>
- *
- * @api
  */
 class RouteCollection implements \IteratorAggregate, \Countable
 {
@@ -73,8 +71,6 @@ public function count()
      *
      * @param string $name  The route name
      * @param Route  $route A Route instance
-     *
-     * @api
      */
     public function add($name, Route $route)
     {
@@ -122,8 +118,6 @@ public function remove($name)
      * routes of the added collection.
      *
      * @param RouteCollection $collection A RouteCollection instance
-     *
-     * @api
      */
     public function addCollection(RouteCollection $collection)
     {
@@ -143,8 +137,6 @@ public function addCollection(RouteCollection $collection)
      * @param string $prefix       An optional prefix to add before each pattern of the route collection
      * @param array  $defaults     An array of default values
      * @param array  $requirements An array of requirements
-     *
-     * @api
      */
     public function addPrefix($prefix, array $defaults = array(), array $requirements = array())
     {
diff --git a/vendor/symfony/routing/composer.json b/vendor/symfony/routing/composer.json
index 31b63ae..02837f6 100644
--- a/vendor/symfony/routing/composer.json
+++ b/vendor/symfony/routing/composer.json
@@ -19,7 +19,6 @@
         "php": ">=5.3.9"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
         "symfony/config": "~2.7",
         "symfony/http-foundation": "~2.3",
         "symfony/yaml": "~2.0,>=2.0.5",
diff --git a/vendor/symfony/serializer/Mapping/Loader/AnnotationLoader.php b/vendor/symfony/serializer/Mapping/Loader/AnnotationLoader.php
index 801c317..6c563b4 100644
--- a/vendor/symfony/serializer/Mapping/Loader/AnnotationLoader.php
+++ b/vendor/symfony/serializer/Mapping/Loader/AnnotationLoader.php
@@ -49,7 +49,7 @@ public function loadClassMetadata(ClassMetadataInterface $classMetadata)
         $attributesMetadata = $classMetadata->getAttributesMetadata();
 
         foreach ($reflectionClass->getProperties() as $property) {
-            if (!isset($attributeMetadata[$property->name])) {
+            if (!isset($attributesMetadata[$property->name])) {
                 $attributesMetadata[$property->name] = new AttributeMetadata($property->name);
                 $classMetadata->addAttributeMetadata($attributesMetadata[$property->name]);
             }
diff --git a/vendor/symfony/serializer/Normalizer/AbstractNormalizer.php b/vendor/symfony/serializer/Normalizer/AbstractNormalizer.php
index 8cc85e5..55c60c0 100644
--- a/vendor/symfony/serializer/Normalizer/AbstractNormalizer.php
+++ b/vendor/symfony/serializer/Normalizer/AbstractNormalizer.php
@@ -105,7 +105,7 @@ public function setCircularReferenceHandler($circularReferenceHandler)
     /**
      * Set normalization callbacks.
      *
-     * @param array $callbacks help normalize the result
+     * @param callable[] $callbacks help normalize the result
      *
      * @return self
      *
diff --git a/vendor/symfony/serializer/composer.json b/vendor/symfony/serializer/composer.json
index bfd3d9c..0db008b 100644
--- a/vendor/symfony/serializer/composer.json
+++ b/vendor/symfony/serializer/composer.json
@@ -19,7 +19,6 @@
         "php": ">=5.3.9"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
         "symfony/yaml": "~2.0,>=2.0.5",
         "symfony/config": "~2.2",
         "symfony/property-access": "~2.3",
diff --git a/vendor/symfony/translation/DataCollectorTranslator.php b/vendor/symfony/translation/DataCollectorTranslator.php
index 813a857..4c69ff6 100644
--- a/vendor/symfony/translation/DataCollectorTranslator.php
+++ b/vendor/symfony/translation/DataCollectorTranslator.php
@@ -66,8 +66,6 @@ public function transChoice($id, $number, array $parameters = array(), $domain =
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function setLocale($locale)
     {
@@ -76,8 +74,6 @@ public function setLocale($locale)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getLocale()
     {
diff --git a/vendor/symfony/translation/Exception/ExceptionInterface.php b/vendor/symfony/translation/Exception/ExceptionInterface.php
index 7757e66..c85fb93 100644
--- a/vendor/symfony/translation/Exception/ExceptionInterface.php
+++ b/vendor/symfony/translation/Exception/ExceptionInterface.php
@@ -15,8 +15,6 @@
  * Exception interface for all exceptions thrown by the component.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface ExceptionInterface
 {
diff --git a/vendor/symfony/translation/Exception/InvalidResourceException.php b/vendor/symfony/translation/Exception/InvalidResourceException.php
index 6413f1a..cf07943 100644
--- a/vendor/symfony/translation/Exception/InvalidResourceException.php
+++ b/vendor/symfony/translation/Exception/InvalidResourceException.php
@@ -15,8 +15,6 @@
  * Thrown when a resource cannot be loaded.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class InvalidResourceException extends \InvalidArgumentException implements ExceptionInterface
 {
diff --git a/vendor/symfony/translation/Exception/NotFoundResourceException.php b/vendor/symfony/translation/Exception/NotFoundResourceException.php
index 7826e5c..cff73ae 100644
--- a/vendor/symfony/translation/Exception/NotFoundResourceException.php
+++ b/vendor/symfony/translation/Exception/NotFoundResourceException.php
@@ -15,8 +15,6 @@
  * Thrown when a resource does not exist.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class NotFoundResourceException extends \InvalidArgumentException implements ExceptionInterface
 {
diff --git a/vendor/symfony/translation/IdentityTranslator.php b/vendor/symfony/translation/IdentityTranslator.php
index 9c9212e..46a0463 100644
--- a/vendor/symfony/translation/IdentityTranslator.php
+++ b/vendor/symfony/translation/IdentityTranslator.php
@@ -15,8 +15,6 @@
  * IdentityTranslator does not translate anything.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class IdentityTranslator implements TranslatorInterface
 {
@@ -27,8 +25,6 @@ class IdentityTranslator implements TranslatorInterface
      * Constructor.
      *
      * @param MessageSelector|null $selector The message selector for pluralization
-     *
-     * @api
      */
     public function __construct(MessageSelector $selector = null)
     {
@@ -37,8 +33,6 @@ public function __construct(MessageSelector $selector = null)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function setLocale($locale)
     {
@@ -47,8 +41,6 @@ public function setLocale($locale)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getLocale()
     {
@@ -57,8 +49,6 @@ public function getLocale()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function trans($id, array $parameters = array(), $domain = null, $locale = null)
     {
@@ -67,8 +57,6 @@ public function trans($id, array $parameters = array(), $domain = null, $locale
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function transChoice($id, $number, array $parameters = array(), $domain = null, $locale = null)
     {
diff --git a/vendor/symfony/translation/Loader/ArrayLoader.php b/vendor/symfony/translation/Loader/ArrayLoader.php
index 68ba81d..9a595b7 100644
--- a/vendor/symfony/translation/Loader/ArrayLoader.php
+++ b/vendor/symfony/translation/Loader/ArrayLoader.php
@@ -17,15 +17,11 @@
  * ArrayLoader loads translations from a PHP array.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class ArrayLoader implements LoaderInterface
 {
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function load($resource, $locale, $domain = 'messages')
     {
diff --git a/vendor/symfony/translation/Loader/CsvFileLoader.php b/vendor/symfony/translation/Loader/CsvFileLoader.php
index fc92760..2240179 100644
--- a/vendor/symfony/translation/Loader/CsvFileLoader.php
+++ b/vendor/symfony/translation/Loader/CsvFileLoader.php
@@ -19,8 +19,6 @@
  * CsvFileLoader loads translations from CSV files.
  *
  * @author Saša Stamenković <umpirsky@gmail.com>
- *
- * @api
  */
 class CsvFileLoader extends ArrayLoader
 {
@@ -30,8 +28,6 @@ class CsvFileLoader extends ArrayLoader
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function load($resource, $locale, $domain = 'messages')
     {
@@ -55,18 +51,8 @@ public function load($resource, $locale, $domain = 'messages')
         $file->setCsvControl($this->delimiter, $this->enclosure, $this->escape);
 
         foreach ($file as $data) {
-            if (substr($data[0], 0, 1) === '#') {
-                continue;
-            }
-
-            if (!isset($data[1])) {
-                continue;
-            }
-
-            if (count($data) == 2) {
+            if ('#' !== substr($data[0], 0, 1) && isset($data[1]) && 2 === count($data)) {
                 $messages[$data[0]] = $data[1];
-            } else {
-                continue;
             }
         }
 
diff --git a/vendor/symfony/translation/Loader/LoaderInterface.php b/vendor/symfony/translation/Loader/LoaderInterface.php
index 0b28e14..6b65fe3 100644
--- a/vendor/symfony/translation/Loader/LoaderInterface.php
+++ b/vendor/symfony/translation/Loader/LoaderInterface.php
@@ -19,8 +19,6 @@
  * LoaderInterface is the interface implemented by all translation loaders.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface LoaderInterface
 {
@@ -33,8 +31,6 @@
      *
      * @return MessageCatalogue A MessageCatalogue instance
      *
-     * @api
-     *
      * @throws NotFoundResourceException when the resource cannot be found
      * @throws InvalidResourceException  when the resource cannot be loaded
      */
diff --git a/vendor/symfony/translation/Loader/PhpFileLoader.php b/vendor/symfony/translation/Loader/PhpFileLoader.php
index 9ce2e7d..a52e0bb 100644
--- a/vendor/symfony/translation/Loader/PhpFileLoader.php
+++ b/vendor/symfony/translation/Loader/PhpFileLoader.php
@@ -19,15 +19,11 @@
  * PhpFileLoader loads translations from PHP files returning an array of translations.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class PhpFileLoader extends ArrayLoader
 {
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function load($resource, $locale, $domain = 'messages')
     {
diff --git a/vendor/symfony/translation/Loader/QtFileLoader.php b/vendor/symfony/translation/Loader/QtFileLoader.php
index 6dd0696..657bd6e 100644
--- a/vendor/symfony/translation/Loader/QtFileLoader.php
+++ b/vendor/symfony/translation/Loader/QtFileLoader.php
@@ -21,15 +21,11 @@
  * QtFileLoader loads translations from QT Translations XML files.
  *
  * @author Benjamin Eberlei <kontakt@beberlei.de>
- *
- * @api
  */
 class QtFileLoader implements LoaderInterface
 {
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function load($resource, $locale, $domain = 'messages')
     {
diff --git a/vendor/symfony/translation/Loader/XliffFileLoader.php b/vendor/symfony/translation/Loader/XliffFileLoader.php
index 109f35b..0e335db 100644
--- a/vendor/symfony/translation/Loader/XliffFileLoader.php
+++ b/vendor/symfony/translation/Loader/XliffFileLoader.php
@@ -21,15 +21,11 @@
  * XliffFileLoader loads translations from XLIFF files.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class XliffFileLoader implements LoaderInterface
 {
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function load($resource, $locale, $domain = 'messages')
     {
diff --git a/vendor/symfony/translation/Loader/YamlFileLoader.php b/vendor/symfony/translation/Loader/YamlFileLoader.php
index fb0946c..a34cf05 100644
--- a/vendor/symfony/translation/Loader/YamlFileLoader.php
+++ b/vendor/symfony/translation/Loader/YamlFileLoader.php
@@ -21,8 +21,6 @@
  * YamlFileLoader loads translations from Yaml files.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class YamlFileLoader extends ArrayLoader
 {
@@ -30,8 +28,6 @@ class YamlFileLoader extends ArrayLoader
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function load($resource, $locale, $domain = 'messages')
     {
diff --git a/vendor/symfony/translation/LoggingTranslator.php b/vendor/symfony/translation/LoggingTranslator.php
index 4ff3531..fa5c5cc 100644
--- a/vendor/symfony/translation/LoggingTranslator.php
+++ b/vendor/symfony/translation/LoggingTranslator.php
@@ -66,8 +66,6 @@ public function transChoice($id, $number, array $parameters = array(), $domain =
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function setLocale($locale)
     {
@@ -76,8 +74,6 @@ public function setLocale($locale)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getLocale()
     {
diff --git a/vendor/symfony/translation/MessageCatalogue.php b/vendor/symfony/translation/MessageCatalogue.php
index 35beb3d..dd354a8 100644
--- a/vendor/symfony/translation/MessageCatalogue.php
+++ b/vendor/symfony/translation/MessageCatalogue.php
@@ -17,8 +17,6 @@
  * MessageCatalogue.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class MessageCatalogue implements MessageCatalogueInterface, MetadataAwareInterface
 {
@@ -34,8 +32,6 @@ class MessageCatalogue implements MessageCatalogueInterface, MetadataAwareInterf
      *
      * @param string $locale   The locale
      * @param array  $messages An array of messages classified by domain
-     *
-     * @api
      */
     public function __construct($locale, array $messages = array())
     {
@@ -45,8 +41,6 @@ public function __construct($locale, array $messages = array())
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getLocale()
     {
@@ -55,8 +49,6 @@ public function getLocale()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getDomains()
     {
@@ -65,8 +57,6 @@ public function getDomains()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function all($domain = null)
     {
@@ -79,8 +69,6 @@ public function all($domain = null)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function set($id, $translation, $domain = 'messages')
     {
@@ -89,8 +77,6 @@ public function set($id, $translation, $domain = 'messages')
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function has($id, $domain = 'messages')
     {
@@ -115,8 +101,6 @@ public function defines($id, $domain = 'messages')
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function get($id, $domain = 'messages')
     {
@@ -133,8 +117,6 @@ public function get($id, $domain = 'messages')
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function replace($messages, $domain = 'messages')
     {
@@ -145,8 +127,6 @@ public function replace($messages, $domain = 'messages')
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function add($messages, $domain = 'messages')
     {
@@ -159,8 +139,6 @@ public function add($messages, $domain = 'messages')
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function addCatalogue(MessageCatalogueInterface $catalogue)
     {
@@ -184,8 +162,6 @@ public function addCatalogue(MessageCatalogueInterface $catalogue)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function addFallbackCatalogue(MessageCatalogueInterface $catalogue)
     {
@@ -214,8 +190,6 @@ public function addFallbackCatalogue(MessageCatalogueInterface $catalogue)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getFallbackCatalogue()
     {
@@ -224,8 +198,6 @@ public function getFallbackCatalogue()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getResources()
     {
@@ -234,8 +206,6 @@ public function getResources()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function addResource(ResourceInterface $resource)
     {
diff --git a/vendor/symfony/translation/MessageCatalogueInterface.php b/vendor/symfony/translation/MessageCatalogueInterface.php
index 647e337..b1b516d 100644
--- a/vendor/symfony/translation/MessageCatalogueInterface.php
+++ b/vendor/symfony/translation/MessageCatalogueInterface.php
@@ -17,8 +17,6 @@
  * MessageCatalogueInterface.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface MessageCatalogueInterface
 {
@@ -26,8 +24,6 @@
      * Gets the catalogue locale.
      *
      * @return string The locale
-     *
-     * @api
      */
     public function getLocale();
 
@@ -35,8 +31,6 @@ public function getLocale();
      * Gets the domains.
      *
      * @return array An array of domains
-     *
-     * @api
      */
     public function getDomains();
 
@@ -48,8 +42,6 @@ public function getDomains();
      * @param string $domain The domain name
      *
      * @return array An array of messages
-     *
-     * @api
      */
     public function all($domain = null);
 
@@ -59,8 +51,6 @@ public function all($domain = null);
      * @param string $id          The message id
      * @param string $translation The messages translation
      * @param string $domain      The domain name
-     *
-     * @api
      */
     public function set($id, $translation, $domain = 'messages');
 
@@ -71,8 +61,6 @@ public function set($id, $translation, $domain = 'messages');
      * @param string $domain The domain name
      *
      * @return bool true if the message has a translation, false otherwise
-     *
-     * @api
      */
     public function has($id, $domain = 'messages');
 
@@ -83,8 +71,6 @@ public function has($id, $domain = 'messages');
      * @param string $domain The domain name
      *
      * @return bool true if the message has a translation, false otherwise
-     *
-     * @api
      */
     public function defines($id, $domain = 'messages');
 
@@ -95,8 +81,6 @@ public function defines($id, $domain = 'messages');
      * @param string $domain The domain name
      *
      * @return string The message translation
-     *
-     * @api
      */
     public function get($id, $domain = 'messages');
 
@@ -105,8 +89,6 @@ public function get($id, $domain = 'messages');
      *
      * @param array  $messages An array of translations
      * @param string $domain   The domain name
-     *
-     * @api
      */
     public function replace($messages, $domain = 'messages');
 
@@ -115,8 +97,6 @@ public function replace($messages, $domain = 'messages');
      *
      * @param array  $messages An array of translations
      * @param string $domain   The domain name
-     *
-     * @api
      */
     public function add($messages, $domain = 'messages');
 
@@ -126,8 +106,6 @@ public function add($messages, $domain = 'messages');
      * The two catalogues must have the same locale.
      *
      * @param MessageCatalogueInterface $catalogue A MessageCatalogueInterface instance
-     *
-     * @api
      */
     public function addCatalogue(MessageCatalogueInterface $catalogue);
 
@@ -138,8 +116,6 @@ public function addCatalogue(MessageCatalogueInterface $catalogue);
      * This is used to provide default translations when they do not exist for the current locale.
      *
      * @param MessageCatalogueInterface $catalogue A MessageCatalogueInterface instance
-     *
-     * @api
      */
     public function addFallbackCatalogue(MessageCatalogueInterface $catalogue);
 
@@ -147,8 +123,6 @@ public function addFallbackCatalogue(MessageCatalogueInterface $catalogue);
      * Gets the fallback catalogue.
      *
      * @return MessageCatalogueInterface|null A MessageCatalogueInterface instance or null when no fallback has been set
-     *
-     * @api
      */
     public function getFallbackCatalogue();
 
@@ -156,8 +130,6 @@ public function getFallbackCatalogue();
      * Returns an array of resources loaded to build this collection.
      *
      * @return ResourceInterface[] An array of resources
-     *
-     * @api
      */
     public function getResources();
 
@@ -165,8 +137,6 @@ public function getResources();
      * Adds a resource for this collection.
      *
      * @param ResourceInterface $resource A resource instance
-     *
-     * @api
      */
     public function addResource(ResourceInterface $resource);
 }
diff --git a/vendor/symfony/translation/MessageSelector.php b/vendor/symfony/translation/MessageSelector.php
index f7fde31..bdbb0f9 100644
--- a/vendor/symfony/translation/MessageSelector.php
+++ b/vendor/symfony/translation/MessageSelector.php
@@ -16,8 +16,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class MessageSelector
 {
@@ -46,8 +44,6 @@ class MessageSelector
      * @return string
      *
      * @throws \InvalidArgumentException
-     *
-     * @api
      */
     public function choose($message, $number, $locale)
     {
diff --git a/vendor/symfony/translation/PluralizationRules.php b/vendor/symfony/translation/PluralizationRules.php
index 3ef8f00..f250423 100644
--- a/vendor/symfony/translation/PluralizationRules.php
+++ b/vendor/symfony/translation/PluralizationRules.php
@@ -189,8 +189,8 @@ public static function get($number, $locale)
     /**
      * Overrides the default plural rule for a given locale.
      *
-     * @param string $rule   A PHP callable
-     * @param string $locale The locale
+     * @param callable $rule   A PHP callable
+     * @param string   $locale The locale
      *
      * @throws \LogicException
      */
diff --git a/vendor/symfony/translation/Translator.php b/vendor/symfony/translation/Translator.php
index 63e1164..c6d8c16 100644
--- a/vendor/symfony/translation/Translator.php
+++ b/vendor/symfony/translation/Translator.php
@@ -21,8 +21,6 @@
  * Translator.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Translator implements TranslatorInterface, TranslatorBagInterface
 {
@@ -80,8 +78,6 @@ class Translator implements TranslatorInterface, TranslatorBagInterface
      * @param bool                 $debug    Use cache in debug mode ?
      *
      * @throws \InvalidArgumentException If a locale contains invalid characters
-     *
-     * @api
      */
     public function __construct($locale, MessageSelector $selector = null, $cacheDir = null, $debug = false)
     {
@@ -106,8 +102,6 @@ public function setConfigCacheFactory(ConfigCacheFactoryInterface $configCacheFa
      *
      * @param string          $format The name of the loader (@see addResource())
      * @param LoaderInterface $loader A LoaderInterface instance
-     *
-     * @api
      */
     public function addLoader($format, LoaderInterface $loader)
     {
@@ -123,8 +117,6 @@ public function addLoader($format, LoaderInterface $loader)
      * @param string $domain   The domain
      *
      * @throws \InvalidArgumentException If the locale contains invalid characters
-     *
-     * @api
      */
     public function addResource($format, $resource, $locale, $domain = null)
     {
@@ -145,8 +137,6 @@ public function addResource($format, $resource, $locale, $domain = null)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function setLocale($locale)
     {
@@ -156,8 +146,6 @@ public function setLocale($locale)
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function getLocale()
     {
@@ -172,8 +160,6 @@ public function getLocale()
      * @throws \InvalidArgumentException If a locale contains invalid characters
      *
      * @deprecated since version 2.3, to be removed in 3.0. Use setFallbackLocales() instead.
-     *
-     * @api
      */
     public function setFallbackLocale($locales)
     {
@@ -188,8 +174,6 @@ public function setFallbackLocale($locales)
      * @param array $locales The fallback locales
      *
      * @throws \InvalidArgumentException If a locale contains invalid characters
-     *
-     * @api
      */
     public function setFallbackLocales(array $locales)
     {
@@ -207,8 +191,6 @@ public function setFallbackLocales(array $locales)
      * Gets the fallback locales.
      *
      * @return array $locales The fallback locales
-     *
-     * @api
      */
     public function getFallbackLocales()
     {
@@ -217,8 +199,6 @@ public function getFallbackLocales()
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function trans($id, array $parameters = array(), $domain = null, $locale = null)
     {
@@ -231,8 +211,6 @@ public function trans($id, array $parameters = array(), $domain = null, $locale
 
     /**
      * {@inheritdoc}
-     *
-     * @api
      */
     public function transChoice($id, $number, array $parameters = array(), $domain = null, $locale = null)
     {
diff --git a/vendor/symfony/translation/TranslatorInterface.php b/vendor/symfony/translation/TranslatorInterface.php
index fe1a865..869e0b9 100644
--- a/vendor/symfony/translation/TranslatorInterface.php
+++ b/vendor/symfony/translation/TranslatorInterface.php
@@ -15,8 +15,6 @@
  * TranslatorInterface.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface TranslatorInterface
 {
@@ -31,8 +29,6 @@
      * @throws \InvalidArgumentException If the locale contains invalid characters
      *
      * @return string The translated string
-     *
-     * @api
      */
     public function trans($id, array $parameters = array(), $domain = null, $locale = null);
 
@@ -48,8 +44,6 @@ public function trans($id, array $parameters = array(), $domain = null, $locale
      * @throws \InvalidArgumentException If the locale contains invalid characters
      *
      * @return string The translated string
-     *
-     * @api
      */
     public function transChoice($id, $number, array $parameters = array(), $domain = null, $locale = null);
 
@@ -59,8 +53,6 @@ public function transChoice($id, $number, array $parameters = array(), $domain =
      * @param string $locale The locale
      *
      * @throws \InvalidArgumentException If the locale contains invalid characters
-     *
-     * @api
      */
     public function setLocale($locale);
 
@@ -68,8 +60,6 @@ public function setLocale($locale);
      * Returns the current locale.
      *
      * @return string The locale
-     *
-     * @api
      */
     public function getLocale();
 }
diff --git a/vendor/symfony/translation/composer.json b/vendor/symfony/translation/composer.json
index e2e1587..ac833a4 100644
--- a/vendor/symfony/translation/composer.json
+++ b/vendor/symfony/translation/composer.json
@@ -19,7 +19,6 @@
         "php": ">=5.3.9"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
         "symfony/config": "~2.7",
         "symfony/intl": "~2.4",
         "symfony/yaml": "~2.2",
diff --git a/vendor/symfony/validator/Constraint.php b/vendor/symfony/validator/Constraint.php
index 1ddc1ae..dc93d22 100644
--- a/vendor/symfony/validator/Constraint.php
+++ b/vendor/symfony/validator/Constraint.php
@@ -28,8 +28,6 @@
  * @property array $groups The groups that the constraint belongs to
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 abstract class Constraint
 {
@@ -116,8 +114,6 @@ public static function getErrorName($errorCode)
      * @throws ConstraintDefinitionException When you don't pass an associative
      *                                       array, but getDefaultOption() returns
      *                                       null
-     *
-     * @api
      */
     public function __construct($options = null)
     {
@@ -229,8 +225,6 @@ public function __get($option)
      * Adds the given group if this constraint is in the Default group.
      *
      * @param string $group
-     *
-     * @api
      */
     public function addImplicitGroupName($group)
     {
@@ -247,8 +241,6 @@ public function addImplicitGroupName($group)
      * @return string
      *
      * @see __construct()
-     *
-     * @api
      */
     public function getDefaultOption()
     {
@@ -262,8 +254,6 @@ public function getDefaultOption()
      * @return array
      *
      * @see __construct()
-     *
-     * @api
      */
     public function getRequiredOptions()
     {
@@ -278,8 +268,6 @@ public function getRequiredOptions()
      * behaviour.
      *
      * @return string
-     *
-     * @api
      */
     public function validatedBy()
     {
@@ -294,8 +282,6 @@ public function validatedBy()
      * Constraint::CLASS_CONSTRAINT and Constraint::PROPERTY_CONSTRAINT.
      *
      * @return string|array One or more constant values
-     *
-     * @api
      */
     public function getTargets()
     {
diff --git a/vendor/symfony/validator/ConstraintValidator.php b/vendor/symfony/validator/ConstraintValidator.php
index 3b5d6bc..df6e86e 100644
--- a/vendor/symfony/validator/ConstraintValidator.php
+++ b/vendor/symfony/validator/ConstraintValidator.php
@@ -19,8 +19,6 @@
  * Base class for constraint validators.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 abstract class ConstraintValidator implements ConstraintValidatorInterface
 {
diff --git a/vendor/symfony/validator/ConstraintValidatorInterface.php b/vendor/symfony/validator/ConstraintValidatorInterface.php
index f7538a1..85fd451 100644
--- a/vendor/symfony/validator/ConstraintValidatorInterface.php
+++ b/vendor/symfony/validator/ConstraintValidatorInterface.php
@@ -13,8 +13,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 interface ConstraintValidatorInterface
 {
@@ -30,8 +28,6 @@ public function initialize(ExecutionContextInterface $context);
      *
      * @param mixed      $value      The value that should be validated
      * @param Constraint $constraint The constraint for the validation
-     *
-     * @api
      */
     public function validate($value, Constraint $constraint);
 }
diff --git a/vendor/symfony/validator/ConstraintViolationInterface.php b/vendor/symfony/validator/ConstraintViolationInterface.php
index 9baee2f..1ed09b3 100644
--- a/vendor/symfony/validator/ConstraintViolationInterface.php
+++ b/vendor/symfony/validator/ConstraintViolationInterface.php
@@ -32,8 +32,6 @@
  * element is still the person, but the property path is "address.street".
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 interface ConstraintViolationInterface
 {
@@ -41,8 +39,6 @@
      * Returns the violation message.
      *
      * @return string The violation message.
-     *
-     * @api
      */
     public function getMessage();
 
@@ -54,8 +50,6 @@ public function getMessage();
      * message template and parameters to a translation engine.
      *
      * @return string The raw violation message.
-     *
-     * @api
      */
     public function getMessageTemplate();
 
@@ -67,8 +61,6 @@ public function getMessageTemplate();
      *
      * @see getMessageTemplate()
      *
-     * @api
-     *
      * @deprecated since version 2.7, to be replaced by getParameters() in 3.0.
      */
     public function getMessageParameters();
@@ -100,8 +92,6 @@ public function getMessagePluralization();
      *               the validation was started. Because the validator traverses
      *               the object graph, the value at which the violation occurs
      *               is not necessarily the value that was originally validated.
-     *
-     * @api
      */
     public function getRoot();
 
@@ -116,8 +106,6 @@ public function getRoot();
      *                path is "address.street". Property access is denoted by
      *                dots, while array access is denoted by square brackets,
      *                for example "addresses[1].street".
-     *
-     * @api
      */
     public function getPropertyPath();
 
@@ -126,8 +114,6 @@ public function getPropertyPath();
      *
      * @return mixed The invalid value that caused the validated constraint to
      *               fail.
-     *
-     * @api
      */
     public function getInvalidValue();
 
diff --git a/vendor/symfony/validator/ConstraintViolationListInterface.php b/vendor/symfony/validator/ConstraintViolationListInterface.php
index 088c70c..8d15bd7 100644
--- a/vendor/symfony/validator/ConstraintViolationListInterface.php
+++ b/vendor/symfony/validator/ConstraintViolationListInterface.php
@@ -15,8 +15,6 @@
  * A list of constraint violations.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 interface ConstraintViolationListInterface extends \Traversable, \Countable, \ArrayAccess
 {
@@ -24,8 +22,6 @@
      * Adds a constraint violation to this list.
      *
      * @param ConstraintViolationInterface $violation The violation to add.
-     *
-     * @api
      */
     public function add(ConstraintViolationInterface $violation);
 
@@ -33,8 +29,6 @@ public function add(ConstraintViolationInterface $violation);
      * Merges an existing violation list into this list.
      *
      * @param ConstraintViolationListInterface $otherList The list to merge.
-     *
-     * @api
      */
     public function addAll(ConstraintViolationListInterface $otherList);
 
@@ -46,8 +40,6 @@ public function addAll(ConstraintViolationListInterface $otherList);
      * @return ConstraintViolationInterface The violation.
      *
      * @throws \OutOfBoundsException If the offset does not exist.
-     *
-     * @api
      */
     public function get($offset);
 
@@ -57,8 +49,6 @@ public function get($offset);
      * @param int $offset The violation offset.
      *
      * @return bool Whether the offset exists.
-     *
-     * @api
      */
     public function has($offset);
 
@@ -67,8 +57,6 @@ public function has($offset);
      *
      * @param int                          $offset    The violation offset.
      * @param ConstraintViolationInterface $violation The violation.
-     *
-     * @api
      */
     public function set($offset, ConstraintViolationInterface $violation);
 
@@ -76,8 +64,6 @@ public function set($offset, ConstraintViolationInterface $violation);
      * Removes a violation at a given offset.
      *
      * @param int $offset The offset to remove.
-     *
-     * @api
      */
     public function remove($offset);
 }
diff --git a/vendor/symfony/validator/Constraints/All.php b/vendor/symfony/validator/Constraints/All.php
index 3250fcf..b531a1d 100644
--- a/vendor/symfony/validator/Constraints/All.php
+++ b/vendor/symfony/validator/Constraints/All.php
@@ -16,8 +16,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class All extends Composite
 {
diff --git a/vendor/symfony/validator/Constraints/AllValidator.php b/vendor/symfony/validator/Constraints/AllValidator.php
index a655afc..94ff819 100644
--- a/vendor/symfony/validator/Constraints/AllValidator.php
+++ b/vendor/symfony/validator/Constraints/AllValidator.php
@@ -18,8 +18,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class AllValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Blank.php b/vendor/symfony/validator/Constraints/Blank.php
index 766ce6c..ad93c74 100644
--- a/vendor/symfony/validator/Constraints/Blank.php
+++ b/vendor/symfony/validator/Constraints/Blank.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Blank extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/BlankValidator.php b/vendor/symfony/validator/Constraints/BlankValidator.php
index 2d26e4a..de4b49b 100644
--- a/vendor/symfony/validator/Constraints/BlankValidator.php
+++ b/vendor/symfony/validator/Constraints/BlankValidator.php
@@ -18,8 +18,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class BlankValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Callback.php b/vendor/symfony/validator/Constraints/Callback.php
index d1d05fa..bef94dd 100644
--- a/vendor/symfony/validator/Constraints/Callback.php
+++ b/vendor/symfony/validator/Constraints/Callback.php
@@ -18,8 +18,6 @@
  * @Target({"CLASS", "PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Callback extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/CallbackValidator.php b/vendor/symfony/validator/Constraints/CallbackValidator.php
index a75e6d2..df49204 100644
--- a/vendor/symfony/validator/Constraints/CallbackValidator.php
+++ b/vendor/symfony/validator/Constraints/CallbackValidator.php
@@ -20,8 +20,6 @@
  * Validator for Callback constraint.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class CallbackValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Choice.php b/vendor/symfony/validator/Constraints/Choice.php
index 39a6457..4e2c8e7 100644
--- a/vendor/symfony/validator/Constraints/Choice.php
+++ b/vendor/symfony/validator/Constraints/Choice.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Choice extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/ChoiceValidator.php b/vendor/symfony/validator/Constraints/ChoiceValidator.php
index b8bb63b..83cfc6e 100644
--- a/vendor/symfony/validator/Constraints/ChoiceValidator.php
+++ b/vendor/symfony/validator/Constraints/ChoiceValidator.php
@@ -23,8 +23,6 @@
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Florian Eckerstorfer <florian@eckerstorfer.org>
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class ChoiceValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Collection.php b/vendor/symfony/validator/Constraints/Collection.php
index 708c8ed..ae55366 100644
--- a/vendor/symfony/validator/Constraints/Collection.php
+++ b/vendor/symfony/validator/Constraints/Collection.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Collection extends Composite
 {
diff --git a/vendor/symfony/validator/Constraints/CollectionValidator.php b/vendor/symfony/validator/Constraints/CollectionValidator.php
index e70a79b..737e880 100644
--- a/vendor/symfony/validator/Constraints/CollectionValidator.php
+++ b/vendor/symfony/validator/Constraints/CollectionValidator.php
@@ -18,8 +18,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class CollectionValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Count.php b/vendor/symfony/validator/Constraints/Count.php
index a3e12fe..3378227 100644
--- a/vendor/symfony/validator/Constraints/Count.php
+++ b/vendor/symfony/validator/Constraints/Count.php
@@ -19,8 +19,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Count extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/Country.php b/vendor/symfony/validator/Constraints/Country.php
index ff6f3d0..d1df3a8 100644
--- a/vendor/symfony/validator/Constraints/Country.php
+++ b/vendor/symfony/validator/Constraints/Country.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Country extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/CountryValidator.php b/vendor/symfony/validator/Constraints/CountryValidator.php
index 8139adf..22b7909 100644
--- a/vendor/symfony/validator/Constraints/CountryValidator.php
+++ b/vendor/symfony/validator/Constraints/CountryValidator.php
@@ -21,8 +21,6 @@
  * Validates whether a value is a valid country code.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class CountryValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Currency.php b/vendor/symfony/validator/Constraints/Currency.php
index c09fe88..736af83 100644
--- a/vendor/symfony/validator/Constraints/Currency.php
+++ b/vendor/symfony/validator/Constraints/Currency.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Miha Vrhovnik <miha.vrhovnik@pagein.si>
- *
- * @api
  */
 class Currency extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/CurrencyValidator.php b/vendor/symfony/validator/Constraints/CurrencyValidator.php
index 9c41dc4..4fa91d5 100644
--- a/vendor/symfony/validator/Constraints/CurrencyValidator.php
+++ b/vendor/symfony/validator/Constraints/CurrencyValidator.php
@@ -21,8 +21,6 @@
  * Validates whether a value is a valid currency.
  *
  * @author Miha Vrhovnik <miha.vrhovnik@pagein.si>
- *
- * @api
  */
 class CurrencyValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Date.php b/vendor/symfony/validator/Constraints/Date.php
index 2bc444f..1001d78 100644
--- a/vendor/symfony/validator/Constraints/Date.php
+++ b/vendor/symfony/validator/Constraints/Date.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Date extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/DateTime.php b/vendor/symfony/validator/Constraints/DateTime.php
index ae67ff3..a71bbbd 100644
--- a/vendor/symfony/validator/Constraints/DateTime.php
+++ b/vendor/symfony/validator/Constraints/DateTime.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class DateTime extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/DateTimeValidator.php b/vendor/symfony/validator/Constraints/DateTimeValidator.php
index a53c463..29864b4 100644
--- a/vendor/symfony/validator/Constraints/DateTimeValidator.php
+++ b/vendor/symfony/validator/Constraints/DateTimeValidator.php
@@ -17,8 +17,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class DateTimeValidator extends DateValidator
 {
diff --git a/vendor/symfony/validator/Constraints/DateValidator.php b/vendor/symfony/validator/Constraints/DateValidator.php
index 0a5dfd4..e14791c 100644
--- a/vendor/symfony/validator/Constraints/DateValidator.php
+++ b/vendor/symfony/validator/Constraints/DateValidator.php
@@ -18,8 +18,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class DateValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Email.php b/vendor/symfony/validator/Constraints/Email.php
index 3697717..96abf2c 100644
--- a/vendor/symfony/validator/Constraints/Email.php
+++ b/vendor/symfony/validator/Constraints/Email.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Email extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/EmailValidator.php b/vendor/symfony/validator/Constraints/EmailValidator.php
index ab1e9ba..8a8aade 100644
--- a/vendor/symfony/validator/Constraints/EmailValidator.php
+++ b/vendor/symfony/validator/Constraints/EmailValidator.php
@@ -19,8 +19,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class EmailValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/File.php b/vendor/symfony/validator/Constraints/File.php
index f35f93c..de9fc00 100644
--- a/vendor/symfony/validator/Constraints/File.php
+++ b/vendor/symfony/validator/Constraints/File.php
@@ -19,8 +19,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class File extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/FileValidator.php b/vendor/symfony/validator/Constraints/FileValidator.php
index 62a6139..34eb0d2 100644
--- a/vendor/symfony/validator/Constraints/FileValidator.php
+++ b/vendor/symfony/validator/Constraints/FileValidator.php
@@ -20,8 +20,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class FileValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/GroupSequence.php b/vendor/symfony/validator/Constraints/GroupSequence.php
index a28a442..aea0558 100644
--- a/vendor/symfony/validator/Constraints/GroupSequence.php
+++ b/vendor/symfony/validator/Constraints/GroupSequence.php
@@ -54,8 +54,6 @@
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
- * @api
- *
  * Implementing \ArrayAccess, \IteratorAggregate and \Countable is @deprecated since 2.5 and will be removed in 3.0.
  */
 class GroupSequence implements \ArrayAccess, \IteratorAggregate, \Countable
diff --git a/vendor/symfony/validator/Constraints/Image.php b/vendor/symfony/validator/Constraints/Image.php
index 904ef97..f75c6a2 100644
--- a/vendor/symfony/validator/Constraints/Image.php
+++ b/vendor/symfony/validator/Constraints/Image.php
@@ -17,8 +17,6 @@
  *
  * @author Benjamin Dulau <benjamin.dulau@gmail.com>
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Image extends File
 {
diff --git a/vendor/symfony/validator/Constraints/Ip.php b/vendor/symfony/validator/Constraints/Ip.php
index 27f0b2d..8096502 100644
--- a/vendor/symfony/validator/Constraints/Ip.php
+++ b/vendor/symfony/validator/Constraints/Ip.php
@@ -22,8 +22,6 @@
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
  * @author Joseph Bielawski <stloyd@gmail.com>
- *
- * @api
  */
 class Ip extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/IpValidator.php b/vendor/symfony/validator/Constraints/IpValidator.php
index 8ec8068..0b17cf7 100644
--- a/vendor/symfony/validator/Constraints/IpValidator.php
+++ b/vendor/symfony/validator/Constraints/IpValidator.php
@@ -21,8 +21,6 @@
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
  * @author Joseph Bielawski <stloyd@gmail.com>
- *
- * @api
  */
 class IpValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/IsFalse.php b/vendor/symfony/validator/Constraints/IsFalse.php
index 7b1b72b..71a0ed6 100644
--- a/vendor/symfony/validator/Constraints/IsFalse.php
+++ b/vendor/symfony/validator/Constraints/IsFalse.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class IsFalse extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/IsFalseValidator.php b/vendor/symfony/validator/Constraints/IsFalseValidator.php
index f521558..b78163b 100644
--- a/vendor/symfony/validator/Constraints/IsFalseValidator.php
+++ b/vendor/symfony/validator/Constraints/IsFalseValidator.php
@@ -18,8 +18,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class IsFalseValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/IsNull.php b/vendor/symfony/validator/Constraints/IsNull.php
index 3e7fef1..64e837a 100644
--- a/vendor/symfony/validator/Constraints/IsNull.php
+++ b/vendor/symfony/validator/Constraints/IsNull.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class IsNull extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/IsNullValidator.php b/vendor/symfony/validator/Constraints/IsNullValidator.php
index 162f618..5615121 100644
--- a/vendor/symfony/validator/Constraints/IsNullValidator.php
+++ b/vendor/symfony/validator/Constraints/IsNullValidator.php
@@ -18,8 +18,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class IsNullValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/IsTrue.php b/vendor/symfony/validator/Constraints/IsTrue.php
index c0be6b8..653135b 100644
--- a/vendor/symfony/validator/Constraints/IsTrue.php
+++ b/vendor/symfony/validator/Constraints/IsTrue.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class IsTrue extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/IsTrueValidator.php b/vendor/symfony/validator/Constraints/IsTrueValidator.php
index 206c63d..2882dd6 100644
--- a/vendor/symfony/validator/Constraints/IsTrueValidator.php
+++ b/vendor/symfony/validator/Constraints/IsTrueValidator.php
@@ -18,8 +18,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class IsTrueValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Language.php b/vendor/symfony/validator/Constraints/Language.php
index e7c29dc..c6f513c 100644
--- a/vendor/symfony/validator/Constraints/Language.php
+++ b/vendor/symfony/validator/Constraints/Language.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Language extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/LanguageValidator.php b/vendor/symfony/validator/Constraints/LanguageValidator.php
index cc8581f..1f514ab 100644
--- a/vendor/symfony/validator/Constraints/LanguageValidator.php
+++ b/vendor/symfony/validator/Constraints/LanguageValidator.php
@@ -21,8 +21,6 @@
  * Validates whether a value is a valid language code.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class LanguageValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Length.php b/vendor/symfony/validator/Constraints/Length.php
index 8d00480..bca4edb 100644
--- a/vendor/symfony/validator/Constraints/Length.php
+++ b/vendor/symfony/validator/Constraints/Length.php
@@ -19,8 +19,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Length extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/Locale.php b/vendor/symfony/validator/Constraints/Locale.php
index 12a5546..cf30eb2 100644
--- a/vendor/symfony/validator/Constraints/Locale.php
+++ b/vendor/symfony/validator/Constraints/Locale.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Locale extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/LocaleValidator.php b/vendor/symfony/validator/Constraints/LocaleValidator.php
index a5f6927..038a1a4 100644
--- a/vendor/symfony/validator/Constraints/LocaleValidator.php
+++ b/vendor/symfony/validator/Constraints/LocaleValidator.php
@@ -21,8 +21,6 @@
  * Validates whether a value is a valid locale code.
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class LocaleValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/NotBlank.php b/vendor/symfony/validator/Constraints/NotBlank.php
index c578c6d..750f412 100644
--- a/vendor/symfony/validator/Constraints/NotBlank.php
+++ b/vendor/symfony/validator/Constraints/NotBlank.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class NotBlank extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/NotBlankValidator.php b/vendor/symfony/validator/Constraints/NotBlankValidator.php
index a435701..f0d4f21 100644
--- a/vendor/symfony/validator/Constraints/NotBlankValidator.php
+++ b/vendor/symfony/validator/Constraints/NotBlankValidator.php
@@ -18,8 +18,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class NotBlankValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/NotNull.php b/vendor/symfony/validator/Constraints/NotNull.php
index 60416c7..57f2492 100644
--- a/vendor/symfony/validator/Constraints/NotNull.php
+++ b/vendor/symfony/validator/Constraints/NotNull.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class NotNull extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/NotNullValidator.php b/vendor/symfony/validator/Constraints/NotNullValidator.php
index a7a905a..88ffb98 100644
--- a/vendor/symfony/validator/Constraints/NotNullValidator.php
+++ b/vendor/symfony/validator/Constraints/NotNullValidator.php
@@ -17,8 +17,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class NotNullValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Range.php b/vendor/symfony/validator/Constraints/Range.php
index a12afff..c59c50c 100644
--- a/vendor/symfony/validator/Constraints/Range.php
+++ b/vendor/symfony/validator/Constraints/Range.php
@@ -19,8 +19,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Range extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/Regex.php b/vendor/symfony/validator/Constraints/Regex.php
index 3cdf514..724274a 100644
--- a/vendor/symfony/validator/Constraints/Regex.php
+++ b/vendor/symfony/validator/Constraints/Regex.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Regex extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/RegexValidator.php b/vendor/symfony/validator/Constraints/RegexValidator.php
index 45ba979..850d760 100644
--- a/vendor/symfony/validator/Constraints/RegexValidator.php
+++ b/vendor/symfony/validator/Constraints/RegexValidator.php
@@ -21,8 +21,6 @@
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
  * @author Joseph Bielawski <stloyd@gmail.com>
- *
- * @api
  */
 class RegexValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Time.php b/vendor/symfony/validator/Constraints/Time.php
index 7998c6f..1134c2e 100644
--- a/vendor/symfony/validator/Constraints/Time.php
+++ b/vendor/symfony/validator/Constraints/Time.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Time extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/TimeValidator.php b/vendor/symfony/validator/Constraints/TimeValidator.php
index 1a173a1..b5b7b9c 100644
--- a/vendor/symfony/validator/Constraints/TimeValidator.php
+++ b/vendor/symfony/validator/Constraints/TimeValidator.php
@@ -18,8 +18,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class TimeValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Type.php b/vendor/symfony/validator/Constraints/Type.php
index fc4cc72..afe5903 100644
--- a/vendor/symfony/validator/Constraints/Type.php
+++ b/vendor/symfony/validator/Constraints/Type.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Type extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/TypeValidator.php b/vendor/symfony/validator/Constraints/TypeValidator.php
index 30ad278..592f122 100644
--- a/vendor/symfony/validator/Constraints/TypeValidator.php
+++ b/vendor/symfony/validator/Constraints/TypeValidator.php
@@ -18,8 +18,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class TypeValidator extends ConstraintValidator
 {
diff --git a/vendor/symfony/validator/Constraints/Url.php b/vendor/symfony/validator/Constraints/Url.php
index 7b8ef3f..3637bc1 100644
--- a/vendor/symfony/validator/Constraints/Url.php
+++ b/vendor/symfony/validator/Constraints/Url.php
@@ -18,8 +18,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Url extends Constraint
 {
diff --git a/vendor/symfony/validator/Constraints/UrlValidator.php b/vendor/symfony/validator/Constraints/UrlValidator.php
index b38f8da..1fd76a8 100644
--- a/vendor/symfony/validator/Constraints/UrlValidator.php
+++ b/vendor/symfony/validator/Constraints/UrlValidator.php
@@ -18,8 +18,6 @@
 
 /**
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class UrlValidator extends ConstraintValidator
 {
@@ -36,7 +34,7 @@ class UrlValidator extends ConstraintValidator
                 \]  # a IPv6 address
             )
             (:[0-9]+)?                              # a port (optional)
-            (/?|/\S+)                               # a /, nothing or a / with something
+            (/?|/\S+|\?|\#)                         # a /, nothing, a / with something, a query or a fragment
         $~ixu';
 
     /**
@@ -48,7 +46,7 @@ public function validate($value, Constraint $constraint)
             throw new UnexpectedTypeException($constraint, __NAMESPACE__.'\Url');
         }
 
-        if (null === $value || '' === $value) {
+        if (null === $value) {
             return;
         }
 
@@ -57,6 +55,10 @@ public function validate($value, Constraint $constraint)
         }
 
         $value = (string) $value;
+        if ('' === $value) {
+            return;
+        }
+
         $pattern = sprintf(static::PATTERN, implode('|', $constraint->protocols));
 
         if (!preg_match($pattern, $value)) {
diff --git a/vendor/symfony/validator/Constraints/Valid.php b/vendor/symfony/validator/Constraints/Valid.php
index 9fc0015..0fb7829 100644
--- a/vendor/symfony/validator/Constraints/Valid.php
+++ b/vendor/symfony/validator/Constraints/Valid.php
@@ -19,8 +19,6 @@
  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 class Valid extends Constraint
 {
diff --git a/vendor/symfony/validator/ExecutionContextInterface.php b/vendor/symfony/validator/ExecutionContextInterface.php
index 2b6cd01..b07e928 100644
--- a/vendor/symfony/validator/ExecutionContextInterface.php
+++ b/vendor/symfony/validator/ExecutionContextInterface.php
@@ -81,8 +81,6 @@
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
- * @api
- *
  * @deprecated since version 2.5, to be removed in 3.0.
  *             Use {@link Context\ExecutionContextInterface} instead.
  */
@@ -98,8 +96,6 @@
      * @param mixed    $invalidValue The invalid, validated value
      * @param int|null $plural       The number to use to pluralize of the message
      * @param int|null $code         The violation code
-     *
-     * @api
      */
     public function addViolation($message, array $params = array(), $invalidValue = null, $plural = null, $code = null);
 
@@ -114,8 +110,6 @@ public function addViolation($message, array $params = array(), $invalidValue =
      * @param int|null $plural       The number to use to pluralize of the message
      * @param int|null $code         The violation code
      *
-     * @api
-     *
      * @deprecated since version 2.5, to be removed in 3.0.
      *             Use {@link Context\ExecutionContextInterface::buildViolation()}
      *             instead.
@@ -204,8 +198,6 @@ public function validateValue($value, $constraints, $subPath = '', $groups = nul
      * Returns the violations generated by the validator so far.
      *
      * @return ConstraintViolationListInterface The constraint violation list.
-     *
-     * @api
      */
     public function getViolations();
 
diff --git a/vendor/symfony/validator/ObjectInitializerInterface.php b/vendor/symfony/validator/ObjectInitializerInterface.php
index 0426bc8..dcbc2cd 100644
--- a/vendor/symfony/validator/ObjectInitializerInterface.php
+++ b/vendor/symfony/validator/ObjectInitializerInterface.php
@@ -19,8 +19,6 @@
  *
  * @author Fabien Potencier <fabien@symfony.com>
  * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @api
  */
 interface ObjectInitializerInterface
 {
@@ -28,8 +26,6 @@
      * Initializes an object just before validation.
      *
      * @param object $object The object to validate
-     *
-     * @api
      */
     public function initialize($object);
 }
diff --git a/vendor/symfony/validator/Resources/translations/validators.de.xlf b/vendor/symfony/validator/Resources/translations/validators.de.xlf
index c79cb94..105f2fb 100644
--- a/vendor/symfony/validator/Resources/translations/validators.de.xlf
+++ b/vendor/symfony/validator/Resources/translations/validators.de.xlf
@@ -224,7 +224,7 @@
             </trans-unit>
             <trans-unit id="59">
                 <source>This is not a valid International Bank Account Number (IBAN).</source>
-                <target>Dieser Wert ist keine gültige IBAN-Kontonummer.</target>
+                <target>Dieser Wert ist keine gültige internationale Bankkontonummer (IBAN).</target>
             </trans-unit>
             <trans-unit id="60">
                 <source>This value is not a valid ISBN-10.</source>
diff --git a/vendor/symfony/validator/Resources/translations/validators.it.xlf b/vendor/symfony/validator/Resources/translations/validators.it.xlf
index b1dcb1e..38e437d 100644
--- a/vendor/symfony/validator/Resources/translations/validators.it.xlf
+++ b/vendor/symfony/validator/Resources/translations/validators.it.xlf
@@ -302,6 +302,18 @@
                 <source>An empty file is not allowed.</source>
                 <target>Un file vuoto non è consentito.</target>
             </trans-unit>
+            <trans-unit id="79">
+                <source>The host could not be resolved.</source>
+                <target>L'host non può essere risolto.</target>
+            </trans-unit>
+            <trans-unit id="80">
+                <source>This value does not match the expected {{ charset }} charset.</source>
+                <target>Questo valore non corrisponde al charset {{ charset }}.</target>
+            </trans-unit>
+            <trans-unit id="81">
+                <source>This is not a valid Business Identifier Code (BIC).</source>
+                <target>Questo valore non è un codice BIC valido.</target>
+            </trans-unit>
         </body>
     </file>
 </xliff>
diff --git a/vendor/symfony/validator/Validator/RecursiveContextualValidator.php b/vendor/symfony/validator/Validator/RecursiveContextualValidator.php
index d632d05..e27f6f6 100644
--- a/vendor/symfony/validator/Validator/RecursiveContextualValidator.php
+++ b/vendor/symfony/validator/Validator/RecursiveContextualValidator.php
@@ -45,6 +45,16 @@ class RecursiveContextualValidator implements ContextualValidatorInterface
     private $context;
 
     /**
+     * @var string
+     */
+    private $defaultPropertyPath;
+
+    /**
+     * @var array
+     */
+    private $defaultGroups;
+
+    /**
      * @var MetadataFactoryInterface
      */
     private $metadataFactory;
diff --git a/vendor/symfony/validator/ValidatorInterface.php b/vendor/symfony/validator/ValidatorInterface.php
index 3682b15..cffc138 100644
--- a/vendor/symfony/validator/ValidatorInterface.php
+++ b/vendor/symfony/validator/ValidatorInterface.php
@@ -16,8 +16,6 @@
  *
  * @author Bernhard Schussek <bschussek@gmail.com>
  *
- * @api
- *
  * @deprecated since version 2.5, to be removed in 3.0.
  *             Use {@link \Symfony\Component\Validator\Validator\ValidatorInterface} instead.
  */
@@ -40,8 +38,6 @@
      *
      * @return ConstraintViolationListInterface A list of constraint violations. If the
      *                                          list is empty, validation succeeded.
-     *
-     * @api
      */
     public function validate($value, $groups = null, $traverse = false, $deep = false);
 
@@ -57,8 +53,6 @@ public function validate($value, $groups = null, $traverse = false, $deep = fals
      *
      * @return ConstraintViolationListInterface A list of constraint violations. If the
      *                                          list is empty, validation succeeded.
-     *
-     * @api
      */
     public function validateProperty($containingValue, $property, $groups = null);
 
@@ -76,8 +70,6 @@ public function validateProperty($containingValue, $property, $groups = null);
      *
      * @return ConstraintViolationListInterface A list of constraint violations. If the
      *                                          list is empty, validation succeeded.
-     *
-     * @api
      */
     public function validatePropertyValue($containingValue, $property, $value, $groups = null);
 
@@ -91,8 +83,6 @@ public function validatePropertyValue($containingValue, $property, $value, $grou
      * @return ConstraintViolationListInterface A list of constraint violations. If the
      *                                          list is empty, validation succeeded.
      *
-     * @api
-     *
      * @deprecated since version 2.5, to be removed in 3.0.
      *             Renamed to {@link Validator\ValidatorInterface::validate()}
      *             in Symfony 2.5.
@@ -104,8 +94,6 @@ public function validateValue($value, $constraints, $groups = null);
      *
      * @return MetadataFactoryInterface The metadata factory.
      *
-     * @api
-     *
      * @deprecated since version 2.5, to be removed in 3.0.
      *             Use {@link Validator\ValidatorInterface::getMetadataFor()} or
      *             {@link Validator\ValidatorInterface::hasMetadataFor()}
diff --git a/vendor/symfony/validator/composer.json b/vendor/symfony/validator/composer.json
index 5881064..c0a898a 100644
--- a/vendor/symfony/validator/composer.json
+++ b/vendor/symfony/validator/composer.json
@@ -20,7 +20,7 @@
         "symfony/translation": "~2.4"
     },
     "require-dev": {
-        "symfony/phpunit-bridge": "~2.7",
+        "doctrine/common": "~2.3",
         "symfony/http-foundation": "~2.1",
         "symfony/intl": "~2.4",
         "symfony/yaml": "~2.0,>=2.0.5",
diff --git a/vendor/symfony/yaml/Exception/DumpException.php b/vendor/symfony/yaml/Exception/DumpException.php
index 9b3e6de..cce972f 100644
--- a/vendor/symfony/yaml/Exception/DumpException.php
+++ b/vendor/symfony/yaml/Exception/DumpException.php
@@ -15,8 +15,6 @@
  * Exception class thrown when an error occurs during dumping.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class DumpException extends RuntimeException
 {
diff --git a/vendor/symfony/yaml/Exception/ExceptionInterface.php b/vendor/symfony/yaml/Exception/ExceptionInterface.php
index 92e5c2e..ad850ee 100644
--- a/vendor/symfony/yaml/Exception/ExceptionInterface.php
+++ b/vendor/symfony/yaml/Exception/ExceptionInterface.php
@@ -15,8 +15,6 @@
  * Exception interface for all exceptions thrown by the component.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 interface ExceptionInterface
 {
diff --git a/vendor/symfony/yaml/Exception/ParseException.php b/vendor/symfony/yaml/Exception/ParseException.php
index 0447dff..b74eb91 100644
--- a/vendor/symfony/yaml/Exception/ParseException.php
+++ b/vendor/symfony/yaml/Exception/ParseException.php
@@ -15,8 +15,6 @@
  * Exception class thrown when an error occurs during parsing.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class ParseException extends RuntimeException
 {
diff --git a/vendor/symfony/yaml/Exception/RuntimeException.php b/vendor/symfony/yaml/Exception/RuntimeException.php
index 3573bf1..3f36b73 100644
--- a/vendor/symfony/yaml/Exception/RuntimeException.php
+++ b/vendor/symfony/yaml/Exception/RuntimeException.php
@@ -15,8 +15,6 @@
  * Exception class thrown when an error occurs during parsing.
  *
  * @author Romain Neutron <imprec@gmail.com>
- *
- * @api
  */
 class RuntimeException extends \RuntimeException implements ExceptionInterface
 {
diff --git a/vendor/symfony/yaml/Inline.php b/vendor/symfony/yaml/Inline.php
index 6e3877b..a5b53bd 100644
--- a/vendor/symfony/yaml/Inline.php
+++ b/vendor/symfony/yaml/Inline.php
@@ -224,8 +224,8 @@ public static function parseScalar($scalar, $delimiters = null, $stringDelimiter
                 $i += strlen($output);
 
                 // remove comments
-                if (false !== $strpos = strpos($output, ' #')) {
-                    $output = rtrim(substr($output, 0, $strpos));
+                if (preg_match('/[ \t]+#/', $output, $match, PREG_OFFSET_CAPTURE)) {
+                    $output = substr($output, 0, $match[0][1]);
                 }
             } elseif (preg_match('/^(.+?)('.implode('|', $delimiters).')/', substr($scalar, $i), $match)) {
                 $output = $match[1];
diff --git a/vendor/symfony/yaml/Parser.php b/vendor/symfony/yaml/Parser.php
index 651c017..04f2237 100644
--- a/vendor/symfony/yaml/Parser.php
+++ b/vendor/symfony/yaml/Parser.php
@@ -20,7 +20,9 @@
  */
 class Parser
 {
-    const FOLDED_SCALAR_PATTERN = '(?P<separator>\||>)(?P<modifiers>\+|\-|\d+|\+\d+|\-\d+|\d+\+|\d+\-)?(?P<comments> +#.*)?';
+    const BLOCK_SCALAR_HEADER_PATTERN = '(?P<separator>\||>)(?P<modifiers>\+|\-|\d+|\+\d+|\-\d+|\d+\+|\d+\-)?(?P<comments> +#.*)?';
+    // BC - wrongly named
+    const FOLDED_SCALAR_PATTERN = self::BLOCK_SCALAR_HEADER_PATTERN;
 
     private $offset = 0;
     private $lines = array();
@@ -373,8 +375,8 @@ private function getNextEmbedBlock($indentation = null, $inSequence = false)
 
         $isItUnindentedCollection = $this->isStringUnIndentedCollectionItem($this->currentLine);
 
-        // Comments must not be removed inside a string block (ie. after a line ending with "|")
-        $removeCommentsPattern = '~'.self::FOLDED_SCALAR_PATTERN.'$~';
+        // Comments must not be removed inside a block scalar
+        $removeCommentsPattern = '~'.self::BLOCK_SCALAR_HEADER_PATTERN.'$~';
         $removeComments = !preg_match($removeCommentsPattern, $this->currentLine);
 
         while ($this->moveToNextLine()) {
@@ -464,10 +466,10 @@ private function parseValue($value, $exceptionOnInvalidType, $objectSupport, $ob
             return $this->refs[$value];
         }
 
-        if (preg_match('/^'.self::FOLDED_SCALAR_PATTERN.'$/', $value, $matches)) {
+        if (preg_match('/^'.self::BLOCK_SCALAR_HEADER_PATTERN.'$/', $value, $matches)) {
             $modifiers = isset($matches['modifiers']) ? $matches['modifiers'] : '';
 
-            return $this->parseFoldedScalar($matches['separator'], preg_replace('#\d+#', '', $modifiers), (int) abs($modifiers));
+            return $this->parseBlockScalar($matches['separator'], preg_replace('#\d+#', '', $modifiers), (int) abs($modifiers));
         }
 
         try {
@@ -481,15 +483,15 @@ private function parseValue($value, $exceptionOnInvalidType, $objectSupport, $ob
     }
 
     /**
-     * Parses a folded scalar.
+     * Parses a block scalar.
      *
-     * @param string $separator   The separator that was used to begin this folded scalar (| or >)
-     * @param string $indicator   The indicator that was used to begin this folded scalar (+ or -)
-     * @param int    $indentation The indentation that was used to begin this folded scalar
+     * @param string $style       The style indicator that was used to begin this block scalar (| or >)
+     * @param string $chomping    The chomping indicator that was used to begin this block scalar (+ or -)
+     * @param int    $indentation The indentation indicator that was used to begin this block scalar
      *
      * @return string The text value
      */
-    private function parseFoldedScalar($separator, $indicator = '', $indentation = 0)
+    private function parseBlockScalar($style, $chomping = '', $indentation = 0)
     {
         $notEOF = $this->moveToNextLine();
         if (!$notEOF) {
@@ -544,17 +546,23 @@ private function parseFoldedScalar($separator, $indicator = '', $indentation = 0
             $this->moveToPreviousLine();
         }
 
-        // replace all non-trailing single newlines with spaces in folded blocks
-        if ('>' === $separator) {
+        // folded style
+        if ('>' === $style) {
+            // folded lines
+            // replace all non-leading/non-trailing single newlines with spaces
             preg_match('/(\n*)$/', $text, $matches);
-            $text = preg_replace('/(?<!\n)\n(?!\n)/', ' ', rtrim($text, "\n"));
+            $text = preg_replace('/(?<!\n|^)\n(?!\n)/', ' ', rtrim($text, "\n"));
             $text .= $matches[1];
+
+            // empty separation lines
+            // remove one newline from each group of non-leading/non-trailing newlines
+            $text = preg_replace('/[^\n]\n+\K\n(?=[^\n])/', '', $text);
         }
 
-        // deal with trailing newlines as indicated
-        if ('' === $indicator) {
+        // deal with trailing newlines
+        if ('' === $chomping) {
             $text = preg_replace('/\n+$/', "\n", $text);
-        } elseif ('-' === $indicator) {
+        } elseif ('-' === $chomping) {
             $text = preg_replace('/\n+$/', '', $text);
         }
 
diff --git a/vendor/symfony/yaml/Yaml.php b/vendor/symfony/yaml/Yaml.php
index b6def51..2d5f62c 100644
--- a/vendor/symfony/yaml/Yaml.php
+++ b/vendor/symfony/yaml/Yaml.php
@@ -17,8 +17,6 @@
  * Yaml offers convenience methods to load and dump YAML.
  *
  * @author Fabien Potencier <fabien@symfony.com>
- *
- * @api
  */
 class Yaml
 {
@@ -48,8 +46,6 @@ class Yaml
      * @return array The YAML converted to a PHP array
      *
      * @throws ParseException If the YAML is not valid
-     *
-     * @api
      */
     public static function parse($input, $exceptionOnInvalidType = false, $objectSupport = false, $objectForMap = false)
     {
@@ -92,8 +88,6 @@ public static function parse($input, $exceptionOnInvalidType = false, $objectSup
      * @param bool  $objectSupport          true if object support is enabled, false otherwise
      *
      * @return string A YAML string representing the original PHP array
-     *
-     * @api
      */
     public static function dump($array, $inline = 2, $indent = 4, $exceptionOnInvalidType = false, $objectSupport = false)
     {
diff --git a/vendor/symfony/yaml/composer.json b/vendor/symfony/yaml/composer.json
index b07b439..b798141 100644
--- a/vendor/symfony/yaml/composer.json
+++ b/vendor/symfony/yaml/composer.json
@@ -18,9 +18,6 @@
     "require": {
         "php": ">=5.3.9"
     },
-    "require-dev": {
-        "symfony/phpunit-bridge": "~2.7"
-    },
     "autoload": {
         "psr-4": { "Symfony\\Component\\Yaml\\": "" }
     },
