diff --git a/composer.json b/composer.json
index 436dae9..54fa255 100644
--- a/composer.json
+++ b/composer.json
@@ -15,7 +15,7 @@
     "symfony/validator": "2.3.*",
     "symfony/yaml": "2.3.*",
     "twig/twig": "1.12.*",
-    "doctrine/common": "2.4.*@beta",
+    "doctrine/annotations": "dev-master#463d926a8dcc49271cb7db5a08364a70ed6e3cd3",
     "guzzle/http": "3.7.*",
     "kriswallsmith/assetic": "1.1.*@alpha",
     "symfony-cmf/routing": "1.1.*@alpha",
diff --git a/composer.lock b/composer.lock
index 01405e1..56e0826 100644
--- a/composer.lock
+++ b/composer.lock
@@ -3,20 +3,20 @@
         "This file locks the dependencies of your project to a known state",
         "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file"
     ],
-    "hash": "4c727150110aeae10efe10a92ff256f5",
+    "hash": "f28e19ec59e89092d28ab844f177d1db",
     "packages": [
         {
             "name": "doctrine/annotations",
-            "version": "v1.1.2",
+            "version": "dev-master",
             "source": {
                 "type": "git",
                 "url": "https://github.com/doctrine/annotations.git",
-                "reference": "v1.1.2"
+                "reference": "463d926a8dcc49271cb7db5a08364a70ed6e3cd3"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/doctrine/annotations/zipball/v1.1.2",
-                "reference": "v1.1.2",
+                "url": "https://api.github.com/repos/doctrine/annotations/zipball/463d926a8dcc49271cb7db5a08364a70ed6e3cd3",
+                "reference": "463d926a8dcc49271cb7db5a08364a70ed6e3cd3",
                 "shasum": ""
             },
             "require": {
@@ -45,7 +45,8 @@
                 {
                     "name": "Jonathan Wage",
                     "email": "jonwage@gmail.com",
-                    "homepage": "http://www.jwage.com/"
+                    "homepage": "http://www.jwage.com/",
+                    "role": "Creator"
                 },
                 {
                     "name": "Guilherme Blanco",
@@ -63,7 +64,7 @@
                 {
                     "name": "Johannes Schmitt",
                     "email": "schmittjoh@gmail.com",
-                    "homepage": "https://github.com/schmittjoh",
+                    "homepage": "http://jmsyst.com",
                     "role": "Developer of wrapped JMSSerializerBundle"
                 }
             ],
@@ -74,272 +75,7 @@
                 "docblock",
                 "parser"
             ],
-            "time": "2013-06-16 21:33:03"
-        },
-        {
-            "name": "doctrine/cache",
-            "version": "v1.0",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/doctrine/cache.git",
-                "reference": "v1.0"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://github.com/doctrine/cache/archive/v1.0.zip",
-                "reference": "v1.0",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.2"
-            },
-            "type": "library",
-            "autoload": {
-                "psr-0": {
-                    "Doctrine\\Common\\Cache\\": "lib/"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Jonathan Wage",
-                    "email": "jonwage@gmail.com",
-                    "homepage": "http://www.jwage.com/"
-                },
-                {
-                    "name": "Guilherme Blanco",
-                    "email": "guilhermeblanco@gmail.com",
-                    "homepage": "http://www.instaclick.com"
-                },
-                {
-                    "name": "Roman Borschel",
-                    "email": "roman@code-factory.org"
-                },
-                {
-                    "name": "Benjamin Eberlei",
-                    "email": "kontakt@beberlei.de"
-                },
-                {
-                    "name": "Johannes M. Schmitt",
-                    "email": "schmittjoh@gmail.com",
-                    "homepage": "https://github.com/schmittjoh",
-                    "role": "Developer of wrapped JMSSerializerBundle"
-                }
-            ],
-            "description": "Caching library offering an object-oriented API for many cache backends",
-            "homepage": "http://www.doctrine-project.org",
-            "keywords": [
-                "cache",
-                "caching"
-            ],
-            "time": "2013-01-10 22:43:46"
-        },
-        {
-            "name": "doctrine/collections",
-            "version": "v1.1",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/doctrine/collections.git",
-                "reference": "v1.1"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/doctrine/collections/zipball/v1.1",
-                "reference": "v1.1",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.2"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "1.1.x-dev"
-                }
-            },
-            "autoload": {
-                "psr-0": {
-                    "Doctrine\\Common\\Collections\\": "lib/"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Jonathan Wage",
-                    "email": "jonwage@gmail.com",
-                    "homepage": "http://www.jwage.com/"
-                },
-                {
-                    "name": "Guilherme Blanco",
-                    "email": "guilhermeblanco@gmail.com",
-                    "homepage": "http://www.instaclick.com"
-                },
-                {
-                    "name": "Roman Borschel",
-                    "email": "roman@code-factory.org"
-                },
-                {
-                    "name": "Benjamin Eberlei",
-                    "email": "kontakt@beberlei.de"
-                },
-                {
-                    "name": "Johannes M. Schmitt",
-                    "email": "schmittjoh@gmail.com",
-                    "homepage": "https://github.com/schmittjoh",
-                    "role": "Developer of wrapped JMSSerializerBundle"
-                }
-            ],
-            "description": "Collections Abstraction library",
-            "homepage": "http://www.doctrine-project.org",
-            "keywords": [
-                "array",
-                "collections",
-                "iterator"
-            ],
-            "time": "2013-03-07 12:15:54"
-        },
-        {
-            "name": "doctrine/common",
-            "version": "2.4.0-RC4",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/doctrine/common.git",
-                "reference": "2.4.0-RC4"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://api.github.com/repos/doctrine/common/zipball/2.4.0-RC4",
-                "reference": "2.4.0-RC4",
-                "shasum": ""
-            },
-            "require": {
-                "doctrine/annotations": "1.*",
-                "doctrine/cache": "1.*",
-                "doctrine/collections": "1.*",
-                "doctrine/inflector": "1.*",
-                "doctrine/lexer": "1.*",
-                "php": ">=5.3.2"
-            },
-            "type": "library",
-            "extra": {
-                "branch-alias": {
-                    "dev-master": "2.4.x-dev"
-                }
-            },
-            "autoload": {
-                "psr-0": {
-                    "Doctrine\\Common\\": "lib/"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Jonathan Wage",
-                    "email": "jonwage@gmail.com",
-                    "homepage": "http://www.jwage.com/"
-                },
-                {
-                    "name": "Guilherme Blanco",
-                    "email": "guilhermeblanco@gmail.com",
-                    "homepage": "http://www.instaclick.com"
-                },
-                {
-                    "name": "Roman Borschel",
-                    "email": "roman@code-factory.org"
-                },
-                {
-                    "name": "Benjamin Eberlei",
-                    "email": "kontakt@beberlei.de"
-                },
-                {
-                    "name": "Johannes M. Schmitt",
-                    "email": "schmittjoh@gmail.com",
-                    "homepage": "https://github.com/schmittjoh",
-                    "role": "Developer of wrapped JMSSerializerBundle"
-                }
-            ],
-            "description": "Common Library for Doctrine projects",
-            "homepage": "http://www.doctrine-project.org",
-            "keywords": [
-                "annotations",
-                "collections",
-                "eventmanager",
-                "persistence",
-                "spl"
-            ],
-            "time": "2013-06-21 12:11:28"
-        },
-        {
-            "name": "doctrine/inflector",
-            "version": "v1.0",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/doctrine/inflector.git",
-                "reference": "v1.0"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://github.com/doctrine/inflector/archive/v1.0.zip",
-                "reference": "v1.0",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.2"
-            },
-            "type": "library",
-            "autoload": {
-                "psr-0": {
-                    "Doctrine\\Common\\Inflector\\": "lib/"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Jonathan Wage",
-                    "email": "jonwage@gmail.com",
-                    "homepage": "http://www.jwage.com/"
-                },
-                {
-                    "name": "Guilherme Blanco",
-                    "email": "guilhermeblanco@gmail.com",
-                    "homepage": "http://www.instaclick.com"
-                },
-                {
-                    "name": "Roman Borschel",
-                    "email": "roman@code-factory.org"
-                },
-                {
-                    "name": "Benjamin Eberlei",
-                    "email": "kontakt@beberlei.de"
-                },
-                {
-                    "name": "Johannes M. Schmitt",
-                    "email": "schmittjoh@gmail.com",
-                    "homepage": "https://github.com/schmittjoh",
-                    "role": "Developer of wrapped JMSSerializerBundle"
-                }
-            ],
-            "description": "Common String Manipulations with regard to casing and singular/plural rules.",
-            "homepage": "http://www.doctrine-project.org",
-            "keywords": [
-                "inflection",
-                "pluarlize",
-                "singuarlize",
-                "string"
-            ],
-            "time": "2013-01-10 21:49:15"
+            "time": "2013-11-19 05:59:59"
         },
         {
             "name": "doctrine/lexer",
@@ -347,12 +83,12 @@
             "source": {
                 "type": "git",
                 "url": "https://github.com/doctrine/lexer.git",
-                "reference": "v1.0"
+                "reference": "2f708a85bb3aab5d99dab8be435abd73e0b18acb"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://github.com/doctrine/lexer/archive/v1.0.zip",
-                "reference": "v1.0",
+                "url": "https://api.github.com/repos/doctrine/lexer/zipball/2f708a85bb3aab5d99dab8be435abd73e0b18acb",
+                "reference": "2f708a85bb3aab5d99dab8be435abd73e0b18acb",
                 "shasum": ""
             },
             "require": {
@@ -379,9 +115,9 @@
                     "email": "roman@code-factory.org"
                 },
                 {
-                    "name": "Johannes M. Schmitt",
+                    "name": "Johannes Schmitt",
                     "email": "schmittjoh@gmail.com",
-                    "homepage": "https://github.com/schmittjoh",
+                    "homepage": "http://jmsyst.com",
                     "role": "Developer of wrapped JMSSerializerBundle"
                 }
             ],
@@ -2055,7 +1791,7 @@
     ],
     "minimum-stability": "stable",
     "stability-flags": {
-        "doctrine/common": 10,
+        "doctrine/annotations": 20,
         "kriswallsmith/assetic": 15,
         "symfony-cmf/routing": 15,
         "easyrdf/easyrdf": 10
diff --git a/core/vendor/autoload.php b/core/vendor/autoload.php
index e934391..d51dd2b 100644
--- a/core/vendor/autoload.php
+++ b/core/vendor/autoload.php
@@ -4,4 +4,4 @@
 
 require_once __DIR__ . '/composer' . '/autoload_real.php';
 
-return ComposerAutoloaderInitdcdeef3a2347836a4b3309cb54064cf9::getLoader();
+return ComposerAutoloaderInit25888cdad0e36c7b3f9e9c6100497e7e::getLoader();
diff --git a/core/vendor/composer/autoload_files.php b/core/vendor/composer/autoload_files.php
index 09fe0fc..2ebcd82 100644
--- a/core/vendor/composer/autoload_files.php
+++ b/core/vendor/composer/autoload_files.php
@@ -8,4 +8,4 @@
 return array(
     $vendorDir . '/kriswallsmith/assetic/src/functions.php',
     $baseDir . '/core/lib/Drupal.php',
-);
\ No newline at end of file
+);
diff --git a/core/vendor/composer/autoload_namespaces.php b/core/vendor/composer/autoload_namespaces.php
index f6dbb7c..59a4a90 100644
--- a/core/vendor/composer/autoload_namespaces.php
+++ b/core/vendor/composer/autoload_namespaces.php
@@ -34,10 +34,6 @@
     'Drupal\\Core' => array($baseDir . '/core/lib'),
     'Drupal\\Component' => array($baseDir . '/core/lib'),
     'Doctrine\\Common\\Lexer\\' => array($vendorDir . '/doctrine/lexer/lib'),
-    'Doctrine\\Common\\Inflector\\' => array($vendorDir . '/doctrine/inflector/lib'),
-    'Doctrine\\Common\\Collections\\' => array($vendorDir . '/doctrine/collections/lib'),
-    'Doctrine\\Common\\Cache\\' => array($vendorDir . '/doctrine/cache/lib'),
     'Doctrine\\Common\\Annotations\\' => array($vendorDir . '/doctrine/annotations/lib'),
-    'Doctrine\\Common\\' => array($vendorDir . '/doctrine/common/lib'),
     'Assetic' => array($vendorDir . '/kriswallsmith/assetic/src'),
 );
diff --git a/core/vendor/composer/autoload_real.php b/core/vendor/composer/autoload_real.php
index 34e0d19..ca36927 100644
--- a/core/vendor/composer/autoload_real.php
+++ b/core/vendor/composer/autoload_real.php
@@ -2,7 +2,7 @@
 
 // autoload_real.php @generated by Composer
 
-class ComposerAutoloaderInitdcdeef3a2347836a4b3309cb54064cf9
+class ComposerAutoloaderInit25888cdad0e36c7b3f9e9c6100497e7e
 {
     private static $loader;
 
@@ -19,9 +19,9 @@ public static function getLoader()
             return self::$loader;
         }
 
-        spl_autoload_register(array('ComposerAutoloaderInitdcdeef3a2347836a4b3309cb54064cf9', 'loadClassLoader'), true, true);
+        spl_autoload_register(array('ComposerAutoloaderInit25888cdad0e36c7b3f9e9c6100497e7e', 'loadClassLoader'), true, true);
         self::$loader = $loader = new \Composer\Autoload\ClassLoader();
-        spl_autoload_unregister(array('ComposerAutoloaderInitdcdeef3a2347836a4b3309cb54064cf9', 'loadClassLoader'));
+        spl_autoload_unregister(array('ComposerAutoloaderInit25888cdad0e36c7b3f9e9c6100497e7e', 'loadClassLoader'));
 
         $vendorDir = dirname(__DIR__);
         $baseDir = dirname(dirname($vendorDir));
diff --git a/core/vendor/composer/installed.json b/core/vendor/composer/installed.json
index f7cd26a..0fcedc2 100644
--- a/core/vendor/composer/installed.json
+++ b/core/vendor/composer/installed.json
@@ -682,406 +682,6 @@
         ]
     },
     {
-        "name": "doctrine/lexer",
-        "version": "v1.0",
-        "version_normalized": "1.0.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/doctrine/lexer.git",
-            "reference": "v1.0"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://github.com/doctrine/lexer/archive/v1.0.zip",
-            "reference": "v1.0",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.2"
-        },
-        "time": "2013-01-12 18:59:04",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\Lexer\\": "lib/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com",
-                "homepage": "http://www.instaclick.com"
-            },
-            {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Johannes M. Schmitt",
-                "email": "schmittjoh@gmail.com",
-                "homepage": "https://github.com/schmittjoh",
-                "role": "Developer of wrapped JMSSerializerBundle"
-            }
-        ],
-        "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "lexer",
-            "parser"
-        ]
-    },
-    {
-        "name": "doctrine/annotations",
-        "version": "v1.1.2",
-        "version_normalized": "1.1.2.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/doctrine/annotations.git",
-            "reference": "v1.1.2"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/annotations/zipball/v1.1.2",
-            "reference": "v1.1.2",
-            "shasum": ""
-        },
-        "require": {
-            "doctrine/lexer": "1.*",
-            "php": ">=5.3.2"
-        },
-        "require-dev": {
-            "doctrine/cache": "1.*"
-        },
-        "time": "2013-06-16 21:33:03",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.0.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\Annotations\\": "lib/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com",
-                "homepage": "http://www.jwage.com/"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com",
-                "homepage": "http://www.instaclick.com"
-            },
-            {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Johannes Schmitt",
-                "email": "schmittjoh@gmail.com",
-                "homepage": "https://github.com/schmittjoh",
-                "role": "Developer of wrapped JMSSerializerBundle"
-            }
-        ],
-        "description": "Docblock Annotations Parser",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "annotations",
-            "docblock",
-            "parser"
-        ]
-    },
-    {
-        "name": "doctrine/collections",
-        "version": "v1.1",
-        "version_normalized": "1.1.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/doctrine/collections.git",
-            "reference": "v1.1"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/collections/zipball/v1.1",
-            "reference": "v1.1",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.2"
-        },
-        "time": "2013-03-07 12:15:54",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.1.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\Collections\\": "lib/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com",
-                "homepage": "http://www.jwage.com/"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com",
-                "homepage": "http://www.instaclick.com"
-            },
-            {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Johannes M. Schmitt",
-                "email": "schmittjoh@gmail.com",
-                "homepage": "https://github.com/schmittjoh",
-                "role": "Developer of wrapped JMSSerializerBundle"
-            }
-        ],
-        "description": "Collections Abstraction library",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "array",
-            "collections",
-            "iterator"
-        ]
-    },
-    {
-        "name": "doctrine/cache",
-        "version": "v1.0",
-        "version_normalized": "1.0.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/doctrine/cache.git",
-            "reference": "v1.0"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://github.com/doctrine/cache/archive/v1.0.zip",
-            "reference": "v1.0",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.2"
-        },
-        "time": "2013-01-10 22:43:46",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\Cache\\": "lib/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com",
-                "homepage": "http://www.jwage.com/"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com",
-                "homepage": "http://www.instaclick.com"
-            },
-            {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Johannes M. Schmitt",
-                "email": "schmittjoh@gmail.com",
-                "homepage": "https://github.com/schmittjoh",
-                "role": "Developer of wrapped JMSSerializerBundle"
-            }
-        ],
-        "description": "Caching library offering an object-oriented API for many cache backends",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "cache",
-            "caching"
-        ]
-    },
-    {
-        "name": "doctrine/inflector",
-        "version": "v1.0",
-        "version_normalized": "1.0.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/doctrine/inflector.git",
-            "reference": "v1.0"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://github.com/doctrine/inflector/archive/v1.0.zip",
-            "reference": "v1.0",
-            "shasum": ""
-        },
-        "require": {
-            "php": ">=5.3.2"
-        },
-        "time": "2013-01-10 21:49:15",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\Inflector\\": "lib/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com",
-                "homepage": "http://www.jwage.com/"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com",
-                "homepage": "http://www.instaclick.com"
-            },
-            {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Johannes M. Schmitt",
-                "email": "schmittjoh@gmail.com",
-                "homepage": "https://github.com/schmittjoh",
-                "role": "Developer of wrapped JMSSerializerBundle"
-            }
-        ],
-        "description": "Common String Manipulations with regard to casing and singular/plural rules.",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "inflection",
-            "pluarlize",
-            "singuarlize",
-            "string"
-        ]
-    },
-    {
-        "name": "doctrine/common",
-        "version": "2.4.0-RC4",
-        "version_normalized": "2.4.0.0-RC4",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/doctrine/common.git",
-            "reference": "2.4.0-RC4"
-        },
-        "dist": {
-            "type": "zip",
-            "url": "https://api.github.com/repos/doctrine/common/zipball/2.4.0-RC4",
-            "reference": "2.4.0-RC4",
-            "shasum": ""
-        },
-        "require": {
-            "doctrine/annotations": "1.*",
-            "doctrine/cache": "1.*",
-            "doctrine/collections": "1.*",
-            "doctrine/inflector": "1.*",
-            "doctrine/lexer": "1.*",
-            "php": ">=5.3.2"
-        },
-        "time": "2013-06-21 12:11:28",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "2.4.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-0": {
-                "Doctrine\\Common\\": "lib/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/",
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Jonathan Wage",
-                "email": "jonwage@gmail.com",
-                "homepage": "http://www.jwage.com/"
-            },
-            {
-                "name": "Guilherme Blanco",
-                "email": "guilhermeblanco@gmail.com",
-                "homepage": "http://www.instaclick.com"
-            },
-            {
-                "name": "Roman Borschel",
-                "email": "roman@code-factory.org"
-            },
-            {
-                "name": "Benjamin Eberlei",
-                "email": "kontakt@beberlei.de"
-            },
-            {
-                "name": "Johannes M. Schmitt",
-                "email": "schmittjoh@gmail.com",
-                "homepage": "https://github.com/schmittjoh",
-                "role": "Developer of wrapped JMSSerializerBundle"
-            }
-        ],
-        "description": "Common Library for Doctrine projects",
-        "homepage": "http://www.doctrine-project.org",
-        "keywords": [
-            "annotations",
-            "collections",
-            "eventmanager",
-            "persistence",
-            "spl"
-        ]
-    },
-    {
         "name": "guzzle/common",
         "version": "v3.7.1",
         "version_normalized": "3.7.1.0",
@@ -2115,5 +1715,133 @@
             "filesystem",
             "iterator"
         ]
+    },
+    {
+        "name": "doctrine/lexer",
+        "version": "v1.0",
+        "version_normalized": "1.0.0.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/doctrine/lexer.git",
+            "reference": "2f708a85bb3aab5d99dab8be435abd73e0b18acb"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/doctrine/lexer/zipball/2f708a85bb3aab5d99dab8be435abd73e0b18acb",
+            "reference": "2f708a85bb3aab5d99dab8be435abd73e0b18acb",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.2"
+        },
+        "time": "2013-01-12 18:59:04",
+        "type": "library",
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "Doctrine\\Common\\Lexer\\": "lib/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com",
+                "homepage": "http://www.instaclick.com"
+            },
+            {
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com",
+                "homepage": "http://jmsyst.com",
+                "role": "Developer of wrapped JMSSerializerBundle"
+            }
+        ],
+        "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.",
+        "homepage": "http://www.doctrine-project.org",
+        "keywords": [
+            "lexer",
+            "parser"
+        ]
+    },
+    {
+        "name": "doctrine/annotations",
+        "version": "dev-master",
+        "version_normalized": "9999999-dev",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/doctrine/annotations.git",
+            "reference": "463d926a8dcc49271cb7db5a08364a70ed6e3cd3"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/doctrine/annotations/zipball/463d926a8dcc49271cb7db5a08364a70ed6e3cd3",
+            "reference": "463d926a8dcc49271cb7db5a08364a70ed6e3cd3",
+            "shasum": ""
+        },
+        "require": {
+            "doctrine/lexer": "1.*",
+            "php": ">=5.3.2"
+        },
+        "require-dev": {
+            "doctrine/cache": "1.*"
+        },
+        "time": "2013-11-19 05:59:59",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.0.x-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "Doctrine\\Common\\Annotations\\": "lib/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Jonathan Wage",
+                "email": "jonwage@gmail.com",
+                "homepage": "http://www.jwage.com/",
+                "role": "Creator"
+            },
+            {
+                "name": "Guilherme Blanco",
+                "email": "guilhermeblanco@gmail.com",
+                "homepage": "http://www.instaclick.com"
+            },
+            {
+                "name": "Roman Borschel",
+                "email": "roman@code-factory.org"
+            },
+            {
+                "name": "Benjamin Eberlei",
+                "email": "kontakt@beberlei.de"
+            },
+            {
+                "name": "Johannes Schmitt",
+                "email": "schmittjoh@gmail.com",
+                "homepage": "http://jmsyst.com",
+                "role": "Developer of wrapped JMSSerializerBundle"
+            }
+        ],
+        "description": "Docblock Annotations Parser",
+        "homepage": "http://www.doctrine-project.org",
+        "keywords": [
+            "annotations",
+            "docblock",
+            "parser"
+        ]
     }
 ]
diff --git a/core/vendor/doctrine/annotations/.gitignore b/core/vendor/doctrine/annotations/.gitignore
new file mode 100644
index 0000000..164c346
--- /dev/null
+++ b/core/vendor/doctrine/annotations/.gitignore
@@ -0,0 +1,3 @@
+vendor/
+composer.lock
+composer.phar
diff --git a/core/vendor/doctrine/annotations/.travis.yml b/core/vendor/doctrine/annotations/.travis.yml
index f3dcb23..862a385 100644
--- a/core/vendor/doctrine/annotations/.travis.yml
+++ b/core/vendor/doctrine/annotations/.travis.yml
@@ -3,6 +3,7 @@ language: php
 php:
   - 5.3
   - 5.4
+  - 5.5
 
 before_script:
     - composer --prefer-source --dev install
diff --git a/core/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationReader.php b/core/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationReader.php
index ad4a264..1d17fea 100644
--- a/core/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationReader.php
+++ b/core/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationReader.php
@@ -69,7 +69,7 @@ class AnnotationReader implements Reader
         'Required' => true, 'Attribute' => true, 'Attributes' => true,
         'Target' => true, 'SuppressWarnings' => true,
         'ingroup' => true, 'code' => true, 'endcode' => true,
-        'package_version' => true, 'fixme' => true
+        'package_version' => true, 'fixme' => true, 'noinspection' => true
     );
 
     /**
diff --git a/core/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/DocParser.php b/core/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/DocParser.php
index 9b5daec..46eb044 100644
--- a/core/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/DocParser.php
+++ b/core/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/DocParser.php
@@ -19,11 +19,9 @@
 
 namespace Doctrine\Common\Annotations;
 
-use Closure;
 use ReflectionClass;
 use Doctrine\Common\Annotations\Annotation\Enum;
 use Doctrine\Common\Annotations\Annotation\Target;
-use Doctrine\Common\Annotations\Annotation\Attribute;
 use Doctrine\Common\Annotations\Annotation\Attributes;
 
 /**
@@ -582,7 +580,7 @@ private function Annotations()
     }
 
     /**
-     * Annotation     ::= "@" AnnotationName ["(" [Values] ")"]
+     * Annotation     ::= "@" AnnotationName MethodCall
      * AnnotationName ::= QualifiedName | SimpleName
      * QualifiedName  ::= NameSpacePart "\" {NameSpacePart "\"}* SimpleName
      * NameSpacePart  ::= identifier | null | false | true
@@ -673,16 +671,7 @@ private function Annotation()
             );
         }
 
-        $values = array();
-        if ($this->lexer->isNextToken(DocLexer::T_OPEN_PARENTHESIS)) {
-            $this->match(DocLexer::T_OPEN_PARENTHESIS);
-
-            if ( ! $this->lexer->isNextToken(DocLexer::T_CLOSE_PARENTHESIS)) {
-                $values = $this->Values();
-            }
-
-            $this->match(DocLexer::T_CLOSE_PARENTHESIS);
-        }
+        $values = $this->MethodCall();
 
         if (isset(self::$annotationMetadata[$name]['enum'])) {
             // checks all declared attributes
@@ -736,6 +725,7 @@ private function Annotation()
         }
 
         $instance = new $name();
+
         foreach ($values as $property => $value) {
             if (!isset(self::$annotationMetadata[$name]['properties'][$property])) {
                 if ('value' !== $property) {
@@ -755,7 +745,31 @@ private function Annotation()
     }
 
     /**
-     * Values ::= Array | Value {"," Value}*
+     * MethodCall ::= ["(" [Values] ")"]
+     *
+     * @return array
+     */
+    private function MethodCall()
+    {
+        $values = array();
+
+        if ( ! $this->lexer->isNextToken(DocLexer::T_OPEN_PARENTHESIS)) {
+            return $values;
+        }
+
+        $this->match(DocLexer::T_OPEN_PARENTHESIS);
+
+        if ( ! $this->lexer->isNextToken(DocLexer::T_CLOSE_PARENTHESIS)) {
+            $values = $this->Values();
+        }
+
+        $this->match(DocLexer::T_CLOSE_PARENTHESIS);
+
+        return $values;
+    }
+
+    /**
+     * Values ::= Array | Value {"," Value}* [","]
      *
      * @return array
      */
@@ -766,6 +780,7 @@ private function Values()
         // Handle the case of a single array as value, i.e. @Foo({....})
         if ($this->lexer->isNextToken(DocLexer::T_OPEN_CURLY_BRACES)) {
             $values['value'] = $this->Value();
+
             return $values;
         }
 
@@ -773,6 +788,11 @@ private function Values()
 
         while ($this->lexer->isNextToken(DocLexer::T_COMMA)) {
             $this->match(DocLexer::T_COMMA);
+
+            if ($this->lexer->isNextToken(DocLexer::T_CLOSE_PARENTHESIS)) {
+                break;
+            }
+
             $token = $this->lexer->lookahead;
             $value = $this->Value();
 
@@ -812,12 +832,12 @@ private function Constant()
     {
         $identifier = $this->Identifier();
 
-        if (!defined($identifier) && false !== strpos($identifier, '::') && '\\' !== $identifier[0]) {
-
+        if ( ! defined($identifier) && false !== strpos($identifier, '::') && '\\' !== $identifier[0]) {
             list($className, $const) = explode('::', $identifier);
-            $alias = (false === $pos = strpos($className, '\\'))? $className : substr($className, 0, $pos);
 
+            $alias = (false === $pos = strpos($className, '\\')) ? $className : substr($className, 0, $pos);
             $found = false;
+
             switch (true) {
                 case !empty ($this->namespaces):
                     foreach ($this->namespaces as $ns) {
diff --git a/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/AbstractReaderTest.php b/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/AbstractReaderTest.php
index ea52b02..1e4a95e 100644
--- a/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/AbstractReaderTest.php
+++ b/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/AbstractReaderTest.php
@@ -2,19 +2,10 @@
 
 namespace Doctrine\Tests\Common\Annotations;
 
-use Doctrine\Common\Annotations\DoctrineReader;
 use Doctrine\Common\Annotations\Annotation\IgnoreAnnotation;
-use Doctrine\Common\Annotations\Annotation\IgnorePhpDoc;
+use Doctrine\Common\Annotations\Annotation;
 use ReflectionClass, Doctrine\Common\Annotations\AnnotationReader;
 
-use Doctrine\Tests\Common\Annotations\DummyAnnotation;
-use Doctrine\Tests\Common\Annotations\Name;
-use Doctrine\Tests\Common\Annotations\DummyId;
-use Doctrine\Tests\Common\Annotations\DummyJoinTable;
-use Doctrine\Tests\Common\Annotations\DummyJoinColumn;
-use Doctrine\Tests\Common\Annotations\DummyColumn;
-use Doctrine\Tests\Common\Annotations\DummyGeneratedValue;
-
 require_once __DIR__ . '/TopLevelAnnotation.php';
 
 abstract class AbstractReaderTest extends \PHPUnit_Framework_TestCase
@@ -93,8 +84,16 @@ public function testAnnotationsWithVarType()
         $this->assertInstanceOf('Doctrine\Tests\Common\Annotations\Fixtures\AnnotationTargetAll', $barAnnot[0]->annotation);
     }
 
+    public function testClassWithWithDanglingComma()
+    {
+        $reader = $this->getReader();
+        $annots = $reader->getClassAnnotations(new \ReflectionClass('Doctrine\Tests\Common\Annotations\DummyClassWithDanglingComma'));
+
+        $this->assertCount(1, $annots);
+    }
+
      /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage [Semantical Error] Annotation @AnnotationTargetPropertyMethod is not allowed to be declared on class Doctrine\Tests\Common\Annotations\Fixtures\ClassWithInvalidAnnotationTargetAtClass. You may only use this annotation on these code elements: METHOD, PROPERTY
      */
     public function testClassWithInvalidAnnotationTargetAtClassDocBlock()
@@ -111,7 +110,7 @@ public function testClassWithWithInclude()
     }
 
      /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage [Semantical Error] Annotation @AnnotationTargetClass is not allowed to be declared on property Doctrine\Tests\Common\Annotations\Fixtures\ClassWithInvalidAnnotationTargetAtProperty::$foo. You may only use this annotation on these code elements: CLASS
      */
     public function testClassWithInvalidAnnotationTargetAtPropertyDocBlock()
@@ -121,7 +120,7 @@ public function testClassWithInvalidAnnotationTargetAtPropertyDocBlock()
     }
 
      /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage [Semantical Error] Annotation @AnnotationTargetAnnotation is not allowed to be declared on property Doctrine\Tests\Common\Annotations\Fixtures\ClassWithInvalidAnnotationTargetAtProperty::$bar. You may only use this annotation on these code elements: ANNOTATION
      */
     public function testClassWithInvalidNestedAnnotationTargetAtPropertyDocBlock()
@@ -131,7 +130,7 @@ public function testClassWithInvalidNestedAnnotationTargetAtPropertyDocBlock()
     }
 
      /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage [Semantical Error] Annotation @AnnotationTargetClass is not allowed to be declared on method Doctrine\Tests\Common\Annotations\Fixtures\ClassWithInvalidAnnotationTargetAtMethod::functionName(). You may only use this annotation on these code elements: CLASS
      */
     public function testClassWithInvalidAnnotationTargetAtMethodDocBlock()
@@ -141,7 +140,7 @@ public function testClassWithInvalidAnnotationTargetAtMethodDocBlock()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage Expected namespace separator or identifier, got ')' at position 24 in class @Doctrine\Tests\Common\Annotations\Fixtures\AnnotationWithTargetSyntaxError.
      */
     public function testClassWithAnnotationWithTargetSyntaxErrorAtClassDocBlock()
@@ -151,7 +150,7 @@ public function testClassWithAnnotationWithTargetSyntaxErrorAtClassDocBlock()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage Expected namespace separator or identifier, got ')' at position 24 in class @Doctrine\Tests\Common\Annotations\Fixtures\AnnotationWithTargetSyntaxError.
      */
     public function testClassWithAnnotationWithTargetSyntaxErrorAtPropertyDocBlock()
@@ -161,7 +160,7 @@ public function testClassWithAnnotationWithTargetSyntaxErrorAtPropertyDocBlock()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage Expected namespace separator or identifier, got ')' at position 24 in class @Doctrine\Tests\Common\Annotations\Fixtures\AnnotationWithTargetSyntaxError.
      */
     public function testClassWithAnnotationWithTargetSyntaxErrorAtMethodDocBlock()
@@ -171,7 +170,7 @@ public function testClassWithAnnotationWithTargetSyntaxErrorAtMethodDocBlock()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage [Type Error] Attribute "string" of @AnnotationWithVarType declared on property Doctrine\Tests\Common\Annotations\Fixtures\ClassWithAnnotationWithVarType::$invalidProperty expects a(n) string, but got integer.
      */
     public function testClassWithPropertyInvalidVarTypeError()
@@ -183,7 +182,7 @@ public function testClassWithPropertyInvalidVarTypeError()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage [Type Error] Attribute "annotation" of @AnnotationWithVarType declared on method Doctrine\Tests\Common\Annotations\Fixtures\ClassWithAnnotationWithVarType::invalidMethod() expects a(n) Doctrine\Tests\Common\Annotations\Fixtures\AnnotationTargetAll, but got an instance of Doctrine\Tests\Common\Annotations\Fixtures\AnnotationTargetAnnotation.
      */
     public function testClassWithMethodInvalidVarTypeError()
@@ -195,7 +194,7 @@ public function testClassWithMethodInvalidVarTypeError()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage Expected namespace separator or identifier, got ')' at position 18 in class Doctrine\Tests\Common\Annotations\DummyClassSyntaxError.
      */
     public function testClassSyntaxErrorContext()
@@ -205,7 +204,7 @@ public function testClassSyntaxErrorContext()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage Expected namespace separator or identifier, got ')' at position 18 in method Doctrine\Tests\Common\Annotations\DummyClassMethodSyntaxError::foo().
      */
     public function testMethodSyntaxErrorContext()
@@ -215,7 +214,7 @@ public function testMethodSyntaxErrorContext()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage Expected namespace separator or identifier, got ')' at position 18 in property Doctrine\Tests\Common\Annotations\DummyClassPropertySyntaxError::$foo.
      */
     public function testPropertySyntaxErrorContext()
@@ -268,7 +267,7 @@ public function testImportWithInheritance()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage The annotation "@NameFoo" in property Doctrine\Tests\Common\Annotations\TestAnnotationNotImportedClass::$field was never imported.
      */
     public function testImportDetectsNotImportedAnnotation()
@@ -278,7 +277,7 @@ public function testImportDetectsNotImportedAnnotation()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage The annotation "@Foo\Bar\Name" in property Doctrine\Tests\Common\Annotations\TestNonExistentAnnotationClass::$field was never imported.
      */
     public function testImportDetectsNonExistentAnnotation()
@@ -305,7 +304,7 @@ public function testIgnoresAnnotationsNotPrefixedWithWhitespace()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage The class "Doctrine\Tests\Common\Annotations\Fixtures\NoAnnotation" is not annotated with @Annotation. Are you sure this class can be used as annotation? If so, then you need to add @Annotation to the _class_ doc comment of "Doctrine\Tests\Common\Annotations\Fixtures\NoAnnotation". If it is indeed no annotation, then you need to add @IgnoreAnnotation("NoAnnotation") to the _class_ doc comment of class Doctrine\Tests\Common\Annotations\Fixtures\InvalidAnnotationUsageClass.
      */
     public function testErrorWhenInvalidAnnotationIsUsed()
@@ -462,15 +461,15 @@ class DummyClass2 {
 }
 
 /** @Annotation */
-class DummyId extends \Doctrine\Common\Annotations\Annotation {}
+class DummyId extends Annotation {}
 /** @Annotation */
-class DummyColumn extends \Doctrine\Common\Annotations\Annotation {
+class DummyColumn extends Annotation {
     public $type;
 }
 /** @Annotation */
-class DummyGeneratedValue extends \Doctrine\Common\Annotations\Annotation {}
+class DummyGeneratedValue extends Annotation {}
 /** @Annotation */
-class DummyAnnotation extends \Doctrine\Common\Annotations\Annotation {
+class DummyAnnotation extends Annotation {
     public $dummyValue;
 }
 
@@ -478,23 +477,30 @@ class DummyAnnotation extends \Doctrine\Common\Annotations\Annotation {
  * @api
  * @Annotation
  */
-class DummyAnnotationWithIgnoredAnnotation extends \Doctrine\Common\Annotations\Annotation {
+class DummyAnnotationWithIgnoredAnnotation extends Annotation {
     public $dummyValue;
 }
 
 /** @Annotation */
-class DummyJoinColumn extends \Doctrine\Common\Annotations\Annotation {
+class DummyJoinColumn extends Annotation {
     public $name;
     public $referencedColumnName;
 }
 /** @Annotation */
-class DummyJoinTable extends \Doctrine\Common\Annotations\Annotation {
+class DummyJoinTable extends Annotation {
     public $name;
     public $joinColumns;
     public $inverseJoinColumns;
 }
 
 /**
+ * @DummyAnnotation(dummyValue = "bar",)
+ */
+class DummyClassWithDanglingComma
+{
+}
+
+/**
  * @DummyAnnotation(@)
  */
 class DummyClassSyntaxError
diff --git a/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/DocParserTest.php b/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/DocParserTest.php
index 6c8016f..5b99787 100644
--- a/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/DocParserTest.php
+++ b/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/DocParserTest.php
@@ -2,7 +2,6 @@
 
 namespace Doctrine\Tests\Common\Annotations;
 
-use Doctrine\Common\Annotations\Annotation\IgnorePhpDoc;
 use Doctrine\Common\Annotations\Annotation\IgnoreAnnotation;
 use Doctrine\Common\Annotations\DocParser;
 use Doctrine\Common\Annotations\AnnotationRegistry;
@@ -321,7 +320,7 @@ public function testAnnotationTarget()
             $docComment = $class->getDocComment();
 
             $parser->setTarget(Target::TARGET_CLASS);
-            $parser->parse($class->getDocComment(),$context);
+            $parser->parse($docComment, $context);
 
             $this->fail();
         } catch (\Doctrine\Common\Annotations\AnnotationException $exc) {
@@ -337,7 +336,7 @@ public function testAnnotationTarget()
             $context    = 'method ' . $class->getName() . '::' . $method->getName() . '()';
 
             $parser->setTarget(Target::TARGET_METHOD);
-            $parser->parse($docComment,$context);
+            $parser->parse($docComment, $context);
 
             $this->fail();
         } catch (\Doctrine\Common\Annotations\AnnotationException $exc) {
@@ -352,7 +351,7 @@ public function testAnnotationTarget()
             $context    = 'property ' . $class->getName() . "::\$" . $property->getName();
 
             $parser->setTarget(Target::TARGET_PROPERTY);
-            $parser->parse($docComment,$context);
+            $parser->parse($docComment, $context);
 
             $this->fail();
         } catch (\Doctrine\Common\Annotations\AnnotationException $exc) {
@@ -666,7 +665,7 @@ public function testAnnotationWithRequiredAttributesWithoutContructor()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage Attribute "value" of @Doctrine\Tests\Common\Annotations\Fixtures\AnnotationEnum declared on property SomeClassName::invalidProperty. accept only [ONE, TWO, THREE], but got FOUR.
      */
     public function testAnnotationEnumeratorException()
@@ -681,7 +680,7 @@ public function testAnnotationEnumeratorException()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage Attribute "value" of @Doctrine\Tests\Common\Annotations\Fixtures\AnnotationEnumLiteral declared on property SomeClassName::invalidProperty. accept only [AnnotationEnumLiteral::ONE, AnnotationEnumLiteral::TWO, AnnotationEnumLiteral::THREE], but got 4.
      */
     public function testAnnotationEnumeratorLiteralException()
@@ -810,7 +809,7 @@ public function testSupportClassConstants($docblock, $expected)
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage The annotation @SomeAnnotationClassNameWithoutConstructorAndProperties declared on  does not accept any values, but got {"value":"Foo"}.
      */
     public function testWithoutConstructorWhenIsNotDefaultValue()
@@ -828,7 +827,7 @@ public function testWithoutConstructorWhenIsNotDefaultValue()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage The annotation @SomeAnnotationClassNameWithoutConstructorAndProperties declared on  does not accept any values, but got {"value":"Foo"}.
      */
     public function testWithoutConstructorWhenHasNoProperties()
@@ -845,7 +844,7 @@ public function testWithoutConstructorWhenHasNoProperties()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage Expected namespace separator or identifier, got ')' at position 24 in class @Doctrine\Tests\Common\Annotations\Fixtures\AnnotationWithTargetSyntaxError.
      */
     public function testAnnotationTargetSyntaxError()
@@ -944,7 +943,7 @@ public function testAnnotationWithoutClassIsIgnoredWithoutWarning()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage Expected PlainValue, got ''' at position 10.
      */
     public function testAnnotationDontAcceptSingleQuotes()
@@ -966,12 +965,12 @@ public function testAnnotationDoesntThrowExceptionWhenAtSignIsNotFollowedByIdent
 
     /**
      * @group DCOM-41
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      */
     public function testAnnotationThrowsExceptionWhenAtSignIsNotFollowedByIdentifierInNestedAnnotation()
     {
         $parser = new DocParser();
-        $result = $parser->parse("@Doctrine\Tests\Common\Annotations\Name(@')");
+        $parser->parse("@Doctrine\Tests\Common\Annotations\Name(@')");
     }
 
     /**
@@ -1008,7 +1007,7 @@ public function createTestParser()
 
     /**
      * @group DDC-78
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage Expected PlainValue, got ''' at position 10 in class \Doctrine\Tests\Common\Annotations\Name
      */
     public function testSyntaxErrorWithContextDescription()
@@ -1036,8 +1035,8 @@ class A {
 
         try {
             $parser = $this->createTestParser();
-            $result = $parser->parse($docblock);
-        } catch (Exception $e) {
+            $parser->parse($docblock);
+        } catch (\Exception $e) {
             $this->fail($e->getMessage());
         }
     }
@@ -1057,8 +1056,8 @@ class A {
 
         try {
             $parser = $this->createTestParser();
-            $result = $parser->parse($docblock);
-        } catch (Exception $e) {
+            $parser->parse($docblock);
+        } catch (\Exception $e) {
             $this->fail($e->getMessage());
         }
     }
@@ -1135,7 +1134,7 @@ public function testReservedKeywordsInAnnotations()
     }
 
      /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage [Creation Error] The annotation @SomeAnnotationClassNameWithoutConstructor declared on some class does not have a property named "invalidaProperty". Available properties: data, name
      */
     public function testSetValuesExeption()
@@ -1150,7 +1149,7 @@ public function testSetValuesExeption()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage [Syntax Error] Expected Doctrine\Common\Annotations\DocLexer::T_IDENTIFIER or Doctrine\Common\Annotations\DocLexer::T_TRUE or Doctrine\Common\Annotations\DocLexer::T_FALSE or Doctrine\Common\Annotations\DocLexer::T_NULL, got '3.42' at position 5.
      */
     public function testInvalidIdentifierInAnnotation()
@@ -1190,7 +1189,7 @@ public function testArrayWithColon()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage [Semantical Error] Couldn't find constant foo.
      */
     public function testInvalidContantName()
diff --git a/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/FileCacheReaderTest.php b/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/FileCacheReaderTest.php
index c84344d..325de88 100644
--- a/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/FileCacheReaderTest.php
+++ b/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/FileCacheReaderTest.php
@@ -33,7 +33,7 @@ public function testAttemptToCreateAnnotationCacheDir()
 
         $this->assertFalse(is_dir($this->cacheDir));
 
-        $cache = new FileCacheReader(new AnnotationReader(), $this->cacheDir);
+        new FileCacheReader(new AnnotationReader(), $this->cacheDir);
 
         $this->assertTrue(is_dir($this->cacheDir));
     }
diff --git a/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/SimpleAnnotationReaderTest.php b/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/SimpleAnnotationReaderTest.php
index 376539f..c19eec2 100644
--- a/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/SimpleAnnotationReaderTest.php
+++ b/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/SimpleAnnotationReaderTest.php
@@ -61,7 +61,7 @@ public function testClassWithInvalidAnnotationTargetAtMethodDocBlock()
     }
 
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      */
     public function testInvalidAnnotationUsageButIgnoredClass()
     {
diff --git a/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/Ticket/DCOM55Test.php b/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/Ticket/DCOM55Test.php
index a7b9e2f..a6159d5 100644
--- a/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/Ticket/DCOM55Test.php
+++ b/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/Ticket/DCOM55Test.php
@@ -3,6 +3,7 @@
 namespace Doctrine\Tests\Common\Annotations\Ticket;
 
 use Doctrine\Tests\Common\Annotations\Fixtures\Controller;
+use Doctrine\Common\Annotations\AnnotationReader;
 
 /**
  * @group
@@ -10,20 +11,20 @@
 class DCOM55Test extends \PHPUnit_Framework_TestCase
 {
     /**
-     * @expectedException Doctrine\Common\Annotations\AnnotationException
+     * @expectedException \Doctrine\Common\Annotations\AnnotationException
      * @expectedExceptionMessage [Semantical Error] The class "Doctrine\Tests\Common\Annotations\Fixtures\Controller" is not annotated with @Annotation. Are you sure this class can be used as annotation? If so, then you need to add @Annotation to the _class_ doc comment of "Doctrine\Tests\Common\Annotations\Fixtures\Controller". If it is indeed no annotation, then you need to add @IgnoreAnnotation("Controller") to the _class_ doc comment of class Doctrine\Tests\Common\Annotations\Ticket\Dummy.
      */
     public function testIssue()
     {
         $class = new \ReflectionClass(__NAMESPACE__ . '\\Dummy');
-        $reader = new \Doctrine\Common\Annotations\AnnotationReader();
+        $reader = new AnnotationReader();
         $reader->getClassAnnotations($class);
     }
 
     public function testAnnotation()
     {
         $class = new \ReflectionClass(__NAMESPACE__ . '\\DCOM55Consumer');
-        $reader = new \Doctrine\Common\Annotations\AnnotationReader();
+        $reader = new AnnotationReader();
         $annots = $reader->getClassAnnotations($class);
 
         $this->assertEquals(1, count($annots));
@@ -33,7 +34,7 @@ public function testAnnotation()
     public function testParseAnnotationDocblocks()
     {
         $class = new \ReflectionClass(__NAMESPACE__ . '\\DCOM55Annotation');
-        $reader = new \Doctrine\Common\Annotations\AnnotationReader();
+        $reader = new AnnotationReader();
         $annots = $reader->getClassAnnotations($class);
 
         $this->assertEquals(0, count($annots));
diff --git a/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/Ticket/DCOM58Test.php b/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/Ticket/DCOM58Test.php
index f27d17a..769ab38 100644
--- a/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/Ticket/DCOM58Test.php
+++ b/core/vendor/doctrine/annotations/tests/Doctrine/Tests/Common/Annotations/Ticket/DCOM58Test.php
@@ -1,6 +1,10 @@
 <?php
 namespace Doctrine\Tests\Common\Annotations\Ticket;
 
+use Doctrine\Common\Annotations\AnnotationReader;
+use Doctrine\Common\Annotations\DocParser;
+use Doctrine\Common\Annotations\SimpleAnnotationReader;
+
 //Some class named Entity in the global namespace
 include __DIR__ .'/DCOM58Entity.php';
 
@@ -11,7 +15,7 @@ class DCOM58Test extends \PHPUnit_Framework_TestCase
 {
     public function testIssue()
     {
-        $reader     = new \Doctrine\Common\Annotations\AnnotationReader();
+        $reader     = new AnnotationReader();
         $result     = $reader->getClassAnnotations(new \ReflectionClass(__NAMESPACE__."\MappedClass"));
 
         foreach ($result as $annot) {
@@ -24,7 +28,7 @@ public function testIssue()
     public function testIssueGlobalNamespace()
     {
         $docblock   = "@Entity";
-        $parser     = new \Doctrine\Common\Annotations\DocParser();
+        $parser     = new DocParser();
         $parser->setImports(array(
             "__NAMESPACE__" =>"Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM\Mapping"
         ));
@@ -38,7 +42,7 @@ public function testIssueGlobalNamespace()
     public function testIssueNamespaces()
     {
         $docblock   = "@Entity";
-        $parser     = new \Doctrine\Common\Annotations\DocParser();
+        $parser     = new DocParser();
         $parser->addNamespace("Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM");
 
         $annots     = $parser->parse($docblock);
@@ -50,7 +54,7 @@ public function testIssueNamespaces()
     public function testIssueMultipleNamespaces()
     {
         $docblock   = "@Entity";
-        $parser     = new \Doctrine\Common\Annotations\DocParser();
+        $parser     = new DocParser();
         $parser->addNamespace("Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM\Mapping");
         $parser->addNamespace("Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM");
 
@@ -63,7 +67,7 @@ public function testIssueMultipleNamespaces()
     public function testIssueWithNamespacesOrImports()
     {
         $docblock   = "@Entity";
-        $parser     = new \Doctrine\Common\Annotations\DocParser();
+        $parser     = new DocParser();
         $annots     = $parser->parse($docblock);
 
         $this->assertEquals(1, count($annots));
@@ -74,7 +78,7 @@ public function testIssueWithNamespacesOrImports()
 
     public function testIssueSimpleAnnotationReader()
     {
-        $reader     = new \Doctrine\Common\Annotations\SimpleAnnotationReader();
+        $reader     = new SimpleAnnotationReader();
         $reader->addNamespace('Doctrine\Tests\Common\Annotations\Ticket\Doctrine\ORM\Mapping');
         $annots     = $reader->getClassAnnotations(new \ReflectionClass(__NAMESPACE__."\MappedClass"));
 
diff --git a/core/vendor/doctrine/cache/.travis.yml b/core/vendor/doctrine/cache/.travis.yml
deleted file mode 100644
index 478e5d6..0000000
--- a/core/vendor/doctrine/cache/.travis.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-language: php
-
-php:
-  - 5.3
-  - 5.4
-
-before_script:
-    - composer --prefer-source --dev install
diff --git a/core/vendor/doctrine/cache/LICENSE b/core/vendor/doctrine/cache/LICENSE
deleted file mode 100644
index 4a91f0b..0000000
--- a/core/vendor/doctrine/cache/LICENSE
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (c) 2006-2012 Doctrine Project
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/core/vendor/doctrine/cache/README.md b/core/vendor/doctrine/cache/README.md
deleted file mode 100644
index 68a1087..0000000
--- a/core/vendor/doctrine/cache/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Doctrine Cache
-
-Cache component extracted from the Doctrine Common project.
diff --git a/core/vendor/doctrine/cache/composer.json b/core/vendor/doctrine/cache/composer.json
deleted file mode 100644
index 5c907c9..0000000
--- a/core/vendor/doctrine/cache/composer.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
-    "name": "doctrine/cache",
-    "type": "library",
-    "description": "Caching library offering an object-oriented API for many cache backends",
-    "keywords": ["cache", "caching"],
-    "homepage": "http://www.doctrine-project.org",
-    "license": "MIT",
-    "authors": [
-        {"name": "Guilherme Blanco", "email": "guilhermeblanco@gmail.com"},
-        {"name": "Roman Borschel", "email": "roman@code-factory.org"},
-        {"name": "Benjamin Eberlei", "email": "kontakt@beberlei.de"},
-        {"name": "Jonathan Wage", "email": "jonwage@gmail.com"},
-        {"name": "Johannes Schmitt", "email": "schmittjoh@gmail.com"}
-    ],
-    "require": {
-        "php": ">=5.3.2"
-    },
-    "autoload": {
-        "psr-0": { "Doctrine\\Common\\Cache\\": "lib/" }
-    }
-}
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/ApcCache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/ApcCache.php
deleted file mode 100644
index 2d0cd23a..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/ApcCache.php
+++ /dev/null
@@ -1,93 +0,0 @@
-<?php
-
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-/**
- * APC cache provider.
- *
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @link    www.doctrine-project.org
- * @since   2.0
- * @author  Benjamin Eberlei <kontakt@beberlei.de>
- * @author  Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author  Jonathan Wage <jonwage@gmail.com>
- * @author  Roman Borschel <roman@code-factory.org>
- * @author  David Abdemoulaie <dave@hobodave.com>
- */
-class ApcCache extends CacheProvider
-{
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFetch($id)
-    {
-        return apc_fetch($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doContains($id)
-    {
-        return apc_exists($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doSave($id, $data, $lifeTime = 0)
-    {
-        return (bool) apc_store($id, $data, (int) $lifeTime);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doDelete($id)
-    {
-        return apc_delete($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFlush()
-    {
-        return apc_clear_cache() && apc_clear_cache('user');
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doGetStats()
-    {
-        $info = apc_cache_info();
-        $sma  = apc_sma_info();
-
-        return array(
-            Cache::STATS_HITS              => $info['num_hits'],
-            Cache::STATS_MISSES            => $info['num_misses'],
-            Cache::STATS_UPTIME            => $info['start_time'],
-            Cache::STATS_MEMORY_USAGE      => $info['mem_size'],
-            Cache::STATS_MEMORY_AVAILIABLE => $sma['avail_mem'],
-        );
-    }
-}
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/ArrayCache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/ArrayCache.php
deleted file mode 100644
index a7a70aa..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/ArrayCache.php
+++ /dev/null
@@ -1,96 +0,0 @@
-<?php
-/*
- *  $Id$
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-/**
- * Array cache driver.
- *
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @link    www.doctrine-project.org
- * @since   2.0
- * @author  Benjamin Eberlei <kontakt@beberlei.de>
- * @author  Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author  Jonathan Wage <jonwage@gmail.com>
- * @author  Roman Borschel <roman@code-factory.org>
- * @author  David Abdemoulaie <dave@hobodave.com>
- */
-class ArrayCache extends CacheProvider
-{
-    /**
-     * @var array $data
-     */
-    private $data = array();
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFetch($id)
-    {
-        return (isset($this->data[$id])) ? $this->data[$id] : false;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doContains($id)
-    {
-        return isset($this->data[$id]);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doSave($id, $data, $lifeTime = 0)
-    {
-        $this->data[$id] = $data;
-
-        return true;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doDelete($id)
-    {
-        unset($this->data[$id]);
-
-        return true;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFlush()
-    {
-        $this->data = array();
-
-        return true;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doGetStats()
-    {
-        return null;
-    }
-}
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/Cache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/Cache.php
deleted file mode 100644
index d4e86f4..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/Cache.php
+++ /dev/null
@@ -1,102 +0,0 @@
-<?php
-/*
- *  $Id$
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-/**
- * Interface for cache drivers.
- *
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @link    www.doctrine-project.org
- * @since   2.0
- * @author  Benjamin Eberlei <kontakt@beberlei.de>
- * @author  Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author  Jonathan Wage <jonwage@gmail.com>
- * @author  Roman Borschel <roman@code-factory.org>
- * @author  Fabio B. Silva <fabio.bat.silva@gmail.com>
- */
-interface Cache
-{
-    const STATS_HITS    = 'hits';
-    const STATS_MISSES  = 'misses';
-    const STATS_UPTIME  = 'uptime';
-    const STATS_MEMORY_USAGE        = 'memory_usage';
-    const STATS_MEMORY_AVAILIABLE   = 'memory_available';
-
-    /**
-     * Fetches an entry from the cache.
-     *
-     * @param string $id cache id The id of the cache entry to fetch.
-     * @return mixed The cached data or FALSE, if no cache entry exists for the given id.
-     */
-    function fetch($id);
-
-    /**
-     * Test if an entry exists in the cache.
-     *
-     * @param string $id cache id The cache id of the entry to check for.
-     * @return boolean TRUE if a cache entry exists for the given cache id, FALSE otherwise.
-     */
-    function contains($id);
-
-    /**
-     * Puts data into the cache.
-     *
-     * @param string $id The cache id.
-     * @param mixed $data The cache entry/data.
-     * @param int $lifeTime The lifetime. If != 0, sets a specific lifetime for this cache entry (0 => infinite lifeTime).
-     * @return boolean TRUE if the entry was successfully stored in the cache, FALSE otherwise.
-     */
-    function save($id, $data, $lifeTime = 0);
-
-    /**
-     * Deletes a cache entry.
-     *
-     * @param string $id cache id
-     * @return boolean TRUE if the cache entry was successfully deleted, FALSE otherwise.
-     */
-    function delete($id);
-
-    /**
-     * Retrieves cached information from data store
-     *
-     * The server's statistics array has the following values:
-     *
-     * - <b>hits</b>
-     * Number of keys that have been requested and found present.
-     *
-     * - <b>misses</b>
-     * Number of items that have been requested and not found.
-     *
-     * - <b>uptime</b>
-     * Time that the server is running.
-     *
-     * - <b>memory_usage</b>
-     * Memory used by this server to store items.
-     *
-     * - <b>memory_available</b>
-     * Memory allowed to use for storage.
-     *
-     * @since   2.2
-     * @return  array Associative array with server's statistics if available, NULL otherwise.
-     */
-    function getStats();
-}
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/CacheProvider.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/CacheProvider.php
deleted file mode 100644
index 4221a62..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/CacheProvider.php
+++ /dev/null
@@ -1,231 +0,0 @@
-<?php
-
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-/**
- * Base class for cache provider implementations.
- *
- * @since   2.2
- * @author  Benjamin Eberlei <kontakt@beberlei.de>
- * @author  Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author  Jonathan Wage <jonwage@gmail.com>
- * @author  Roman Borschel <roman@code-factory.org>
- * @author  Fabio B. Silva <fabio.bat.silva@gmail.com>
- */
-abstract class CacheProvider implements Cache
-{
-    const DOCTRINE_NAMESPACE_CACHEKEY = 'DoctrineNamespaceCacheKey[%s]';
-
-    /**
-     * @var string The namespace to prefix all cache ids with
-     */
-    private $namespace = '';
-
-    /**
-     * @var string The namespace version
-     */
-    private $namespaceVersion;
-
-    /**
-     * Set the namespace to prefix all cache ids with.
-     *
-     * @param string $namespace
-     * @return void
-     */
-    public function setNamespace($namespace)
-    {
-        $this->namespace = (string) $namespace;
-    }
-
-    /**
-     * Retrieve the namespace that prefixes all cache ids.
-     *
-     * @return string
-     */
-    public function getNamespace()
-    {
-        return $this->namespace;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function fetch($id)
-    {
-        return $this->doFetch($this->getNamespacedId($id));
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function contains($id)
-    {
-        return $this->doContains($this->getNamespacedId($id));
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function save($id, $data, $lifeTime = 0)
-    {
-        return $this->doSave($this->getNamespacedId($id), $data, $lifeTime);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function delete($id)
-    {
-        return $this->doDelete($this->getNamespacedId($id));
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getStats()
-    {
-        return $this->doGetStats();
-    }
-
-    /**
-     * Deletes all cache entries.
-     *
-     * @return boolean TRUE if the cache entries were successfully flushed, FALSE otherwise.
-     */
-    public function flushAll()
-    {
-        return $this->doFlush();
-    }
-
-    /**
-     * Delete all cache entries.
-     *
-     * @return boolean TRUE if the cache entries were successfully deleted, FALSE otherwise.
-     */
-    public function deleteAll()
-    {
-        $namespaceCacheKey = $this->getNamespaceCacheKey();
-        $namespaceVersion  = $this->getNamespaceVersion() + 1;
-
-        $this->namespaceVersion = $namespaceVersion;
-
-        return $this->doSave($namespaceCacheKey, $namespaceVersion);
-    }
-
-    /**
-     * Prefix the passed id with the configured namespace value
-     *
-     * @param string $id  The id to namespace
-     * @return string $id The namespaced id
-     */
-    private function getNamespacedId($id)
-    {
-        $namespaceVersion  = $this->getNamespaceVersion();
-
-        return sprintf('%s[%s][%s]', $this->namespace, $id, $namespaceVersion);
-    }
-
-    /**
-     * Namespace cache key
-     *
-     * @return string $namespaceCacheKey
-     */
-    private function getNamespaceCacheKey()
-    {
-        return sprintf(self::DOCTRINE_NAMESPACE_CACHEKEY, $this->namespace);
-    }
-
-    /**
-     * Namespace version
-     *
-     * @return string $namespaceVersion
-     */
-    private function getNamespaceVersion()
-    {
-        if (null !== $this->namespaceVersion) {
-            return $this->namespaceVersion;
-        }
-
-        $namespaceCacheKey = $this->getNamespaceCacheKey();
-        $namespaceVersion = $this->doFetch($namespaceCacheKey);
-
-        if (false === $namespaceVersion) {
-            $namespaceVersion = 1;
-
-            $this->doSave($namespaceCacheKey, $namespaceVersion);
-        }
-
-        $this->namespaceVersion = $namespaceVersion;
-
-        return $this->namespaceVersion;
-    }
-
-    /**
-     * Fetches an entry from the cache.
-     *
-     * @param string $id cache id The id of the cache entry to fetch.
-     * @return string The cached data or FALSE, if no cache entry exists for the given id.
-     */
-    abstract protected function doFetch($id);
-
-    /**
-     * Test if an entry exists in the cache.
-     *
-     * @param string $id cache id The cache id of the entry to check for.
-     * @return boolean TRUE if a cache entry exists for the given cache id, FALSE otherwise.
-     */
-    abstract protected function doContains($id);
-
-    /**
-     * Puts data into the cache.
-     *
-     * @param string $id The cache id.
-     * @param string $data The cache entry/data.
-     * @param bool|int $lifeTime The lifetime. If != false, sets a specific lifetime for this
-     *                           cache entry (null => infinite lifeTime).
-     *
-     * @return boolean TRUE if the entry was successfully stored in the cache, FALSE otherwise.
-     */
-    abstract protected function doSave($id, $data, $lifeTime = false);
-
-    /**
-     * Deletes a cache entry.
-     *
-     * @param string $id cache id
-     * @return boolean TRUE if the cache entry was successfully deleted, FALSE otherwise.
-     */
-    abstract protected function doDelete($id);
-
-    /**
-     * Deletes all cache entries.
-     *
-     * @return boolean TRUE if the cache entry was successfully deleted, FALSE otherwise.
-     */
-    abstract protected function doFlush();
-
-     /**
-     * Retrieves cached information from data store
-     *
-     * @since   2.2
-     * @return  array An associative array with server's statistics if available, NULL otherwise.
-     */
-    abstract protected function doGetStats();
-}
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/CouchbaseCache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/CouchbaseCache.php
deleted file mode 100644
index f0e5f90..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/CouchbaseCache.php
+++ /dev/null
@@ -1,123 +0,0 @@
-<?php
-
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-use \Couchbase;
-
-/**
- * Couchbase cache provider.
- *
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @link    www.doctrine-project.org
- * @since   2.4
- * @author  Michael Nitschinger <michael@nitschinger.at>
- */
-class CouchbaseCache extends CacheProvider
-{
-
-    /**
-     * @var Couchbase
-     */
-    private $couchbase;
-
-    /**
-     * Sets the Couchbase instance to use.
-     *
-     * @param Couchbase $couchbase
-     */
-    public function setCouchbase(Couchbase $couchbase)
-    {
-        $this->couchbase = $couchbase;
-    }
-
-    /**
-     * Gets the Couchbase instance used by the cache.
-     *
-     * @return Couchbase
-     */
-    public function getCouchbase()
-    {
-        return $this->couchbase;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFetch($id)
-    {
-        return $this->couchbase->get($id) ?: false;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doContains($id)
-    {
-        return (null !== $this->couchbase->get($id));
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doSave($id, $data, $lifeTime = 0)
-    {
-        if ($lifeTime > 30 * 24 * 3600) {
-            $lifeTime = time() + $lifeTime;
-        }
-        return $this->couchbase->set($id, $data, (int) $lifeTime);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doDelete($id)
-    {
-        return $this->couchbase->delete($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFlush()
-    {
-        return $this->couchbase->flush();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doGetStats()
-    {
-        $stats   = $this->couchbase->getStats();
-        $servers = $this->couchbase->getServers();
-        $server  = explode(":", $servers[0]);
-        $key     = $server[0] . ":" . "11210";
-        $stats   = $stats[$key];
-        return array(
-            Cache::STATS_HITS   => $stats['get_hits'],
-            Cache::STATS_MISSES => $stats['get_misses'],
-            Cache::STATS_UPTIME => $stats['uptime'],
-            Cache::STATS_MEMORY_USAGE       => $stats['bytes'],
-            Cache::STATS_MEMORY_AVAILIABLE  => $stats['limit_maxbytes'],
-        );
-    }
-
-}
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/FileCache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/FileCache.php
deleted file mode 100644
index da650b4..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/FileCache.php
+++ /dev/null
@@ -1,132 +0,0 @@
-<?php
-
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-/**
- * Base file cache driver.
- *
- * @since   2.3
- * @author  Fabio B. Silva <fabio.bat.silva@gmail.com>
- */
-abstract class FileCache extends CacheProvider
-{
-    /**
-     * @var string Cache directory.
-     */
-    protected $directory;
-
-    /**
-     * @var string Cache file extension.
-     */
-    protected $extension;
-
-    /**
-     * Constructor
-     *
-     * @param string $directory Cache directory.
-     * @param string $directory Cache file extension.
-     *
-     * @throws \InvalidArgumentException
-     */
-    public function __construct($directory, $extension = null)
-    {
-        if ( ! is_dir($directory) && ! @mkdir($directory, 0777, true)) {
-            throw new \InvalidArgumentException(sprintf(
-                'The directory "%s" does not exist and could not be created.',
-                $directory
-            ));
-        }
-
-        if ( ! is_writable($directory)) {
-            throw new \InvalidArgumentException(sprintf(
-                'The directory "%s" is not writable.',
-                $directory
-            ));
-        }
-
-        $this->directory = realpath($directory);
-        $this->extension = $extension ?: $this->extension;
-    }
-
-    /**
-     * Gets the cache directory.
-     * 
-     * @return string
-     */
-    public function getDirectory()
-    {
-        return $this->directory;
-    }
-
-    /**
-     * Gets the cache file extension.
-     * 
-     * @return string
-     */
-    public function getExtension()
-    {
-        return $this->extension;
-    }
-
-    /**
-     * @return string
-     */
-    protected function getFilename($id)
-    {
-        $path = implode(str_split(md5($id), 12), DIRECTORY_SEPARATOR);
-        $path = $this->directory . DIRECTORY_SEPARATOR . $path;
-
-        return $path . DIRECTORY_SEPARATOR . $id . $this->extension;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doDelete($id)
-    {
-        return @unlink($this->getFilename($id));
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFlush()
-    {
-        $pattern  = '/^.+\\' . $this->extension . '$/i';
-        $iterator = new \RecursiveDirectoryIterator($this->directory);
-        $iterator = new \RecursiveIteratorIterator($iterator);
-        $iterator = new \RegexIterator($iterator, $pattern);
-
-        foreach ($iterator as $name => $file) {
-            @unlink($name);
-        }
-
-        return true;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doGetStats()
-    {
-        return null;
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/FilesystemCache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/FilesystemCache.php
deleted file mode 100644
index a431438..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/FilesystemCache.php
+++ /dev/null
@@ -1,114 +0,0 @@
-<?php
-
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-/**
- * Filesystem cache driver.
- *
- * @since   2.3
- * @author  Fabio B. Silva <fabio.bat.silva@gmail.com>
- */
-class FilesystemCache extends FileCache
-{
-    const EXTENSION = '.doctrinecache.data';
-
-    /**
-     * {@inheritdoc}
-     */
-    protected $extension = self::EXTENSION;
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFetch($id)
-    {
-        $data     = '';
-        $lifetime = -1;
-        $filename = $this->getFilename($id);
-
-        if ( ! is_file($filename)) {
-            return false;
-        }
-
-        $resource = fopen($filename, "r");
-
-        if (false !== ($line = fgets($resource))) {
-            $lifetime = (integer) $line;
-        }
-
-        if ($lifetime !== 0 && $lifetime < time()) {
-            fclose($resource);
-
-            return false;
-        }
-
-        while (false !== ($line = fgets($resource))) {
-            $data .= $line;
-        }
-
-        fclose($resource);
-
-        return unserialize($data);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doContains($id)
-    {
-        $lifetime = -1;
-        $filename = $this->getFilename($id);
-
-        if ( ! is_file($filename)) {
-            return false;
-        }
-
-        $resource = fopen($filename, "r");
-
-        if (false !== ($line = fgets($resource))) {
-            $lifetime = (integer) $line;
-        }
-
-        fclose($resource);
-
-        return $lifetime === 0 || $lifetime > time();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doSave($id, $data, $lifeTime = 0)
-    {
-        if ($lifeTime > 0) {
-            $lifeTime = time() + $lifeTime;
-        }
-
-        $data       = serialize($data);
-        $filename   = $this->getFilename($id);
-        $filepath   = pathinfo($filename, PATHINFO_DIRNAME);
-
-        if ( ! is_dir($filepath)) {
-            mkdir($filepath, 0777, true);
-        }
-
-        return file_put_contents($filename, $lifeTime . PHP_EOL . $data);
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/MemcacheCache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/MemcacheCache.php
deleted file mode 100644
index 5687b96..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/MemcacheCache.php
+++ /dev/null
@@ -1,121 +0,0 @@
-<?php
-
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-use \Memcache;
-
-/**
- * Memcache cache provider.
- *
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @link    www.doctrine-project.org
- * @since   2.0
- * @author  Benjamin Eberlei <kontakt@beberlei.de>
- * @author  Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author  Jonathan Wage <jonwage@gmail.com>
- * @author  Roman Borschel <roman@code-factory.org>
- * @author  David Abdemoulaie <dave@hobodave.com>
- */
-class MemcacheCache extends CacheProvider
-{
-    /**
-     * @var Memcache
-     */
-    private $memcache;
-
-    /**
-     * Sets the memcache instance to use.
-     *
-     * @param Memcache $memcache
-     */
-    public function setMemcache(Memcache $memcache)
-    {
-        $this->memcache = $memcache;
-    }
-
-    /**
-     * Gets the memcache instance used by the cache.
-     *
-     * @return Memcache
-     */
-    public function getMemcache()
-    {
-        return $this->memcache;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFetch($id)
-    {
-        return $this->memcache->get($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doContains($id)
-    {
-        return (bool) $this->memcache->get($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doSave($id, $data, $lifeTime = 0)
-    {
-        if ($lifeTime > 30 * 24 * 3600) {
-            $lifeTime = time() + $lifeTime;
-        }
-        return $this->memcache->set($id, $data, 0, (int) $lifeTime);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doDelete($id)
-    {
-        return $this->memcache->delete($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFlush()
-    {
-        return $this->memcache->flush();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doGetStats()
-    {
-        $stats = $this->memcache->getStats();
-        return array(
-            Cache::STATS_HITS   => $stats['get_hits'],
-            Cache::STATS_MISSES => $stats['get_misses'],
-            Cache::STATS_UPTIME => $stats['uptime'],
-            Cache::STATS_MEMORY_USAGE       => $stats['bytes'],
-            Cache::STATS_MEMORY_AVAILIABLE  => $stats['limit_maxbytes'],
-        );
-    }
-}
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/MemcachedCache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/MemcachedCache.php
deleted file mode 100644
index 75f1345..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/MemcachedCache.php
+++ /dev/null
@@ -1,124 +0,0 @@
-<?php
-
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-use \Memcached;
-
-/**
- * Memcached cache provider.
- *
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @link    www.doctrine-project.org
- * @since   2.2
- * @author  Benjamin Eberlei <kontakt@beberlei.de>
- * @author  Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author  Jonathan Wage <jonwage@gmail.com>
- * @author  Roman Borschel <roman@code-factory.org>
- * @author  David Abdemoulaie <dave@hobodave.com>
- */
-class MemcachedCache extends CacheProvider
-{
-    /**
-     * @var Memcached
-     */
-    private $memcached;
-
-    /**
-     * Sets the memcache instance to use.
-     *
-     * @param Memcached $memcached
-     */
-    public function setMemcached(Memcached $memcached)
-    {
-        $this->memcached = $memcached;
-    }
-
-    /**
-     * Gets the memcached instance used by the cache.
-     *
-     * @return Memcached
-     */
-    public function getMemcached()
-    {
-        return $this->memcached;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFetch($id)
-    {
-        return $this->memcached->get($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doContains($id)
-    {
-        return (false !== $this->memcached->get($id));
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doSave($id, $data, $lifeTime = 0)
-    {
-        if ($lifeTime > 30 * 24 * 3600) {
-            $lifeTime = time() + $lifeTime;
-        }
-        return $this->memcached->set($id, $data, (int) $lifeTime);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doDelete($id)
-    {
-        return $this->memcached->delete($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFlush()
-    {
-        return $this->memcached->flush();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doGetStats()
-    {
-        $stats   = $this->memcached->getStats();
-        $servers = $this->memcached->getServerList();
-        $key     = $servers[0]['host'] . ':' . $servers[0]['port'];
-        $stats   = $stats[$key];
-        return array(
-            Cache::STATS_HITS   => $stats['get_hits'],
-            Cache::STATS_MISSES => $stats['get_misses'],
-            Cache::STATS_UPTIME => $stats['uptime'],
-            Cache::STATS_MEMORY_USAGE       => $stats['bytes'],
-            Cache::STATS_MEMORY_AVAILIABLE  => $stats['limit_maxbytes'],
-        );
-    }
-}
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/PhpFileCache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/PhpFileCache.php
deleted file mode 100644
index 1d69d3d..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/PhpFileCache.php
+++ /dev/null
@@ -1,108 +0,0 @@
-<?php
-
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-/**
- * Php file cache driver.
- *
- * @since   2.3
- * @author  Fabio B. Silva <fabio.bat.silva@gmail.com>
- */
-class PhpFileCache extends FileCache
-{
-    const EXTENSION = '.doctrinecache.php';
-
-     /**
-     * {@inheritdoc}
-     */
-    protected $extension = self::EXTENSION;
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFetch($id)
-    {
-        $filename = $this->getFilename($id);
-
-        if ( ! is_file($filename)) {
-            return false;
-        }
-
-        $value = include $filename;
-
-        if ($value['lifetime'] !== 0 && $value['lifetime'] < time()) {
-            return false;
-        }
-
-        return $value['data'];
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doContains($id)
-    {
-        $filename = $this->getFilename($id);
-
-        if ( ! is_file($filename)) {
-            return false;
-        }
-
-        $value = include $filename;
-
-        return $value['lifetime'] === 0 || $value['lifetime'] > time();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doSave($id, $data, $lifeTime = 0)
-    {
-        if ($lifeTime > 0) {
-            $lifeTime = time() + $lifeTime;
-        }
-
-        if (is_object($data) && ! method_exists($data, '__set_state')) {
-            throw new \InvalidArgumentException(
-                "Invalid argument given, PhpFileCache only allows objects that implement __set_state() " .
-                "and fully support var_export(). You can use the FilesystemCache to save arbitrary object " .
-                "graphs using serialize()/deserialize()."
-            );
-        }
-
-        $filename   = $this->getFilename($id);
-        $filepath   = pathinfo($filename, PATHINFO_DIRNAME);
-
-        if ( ! is_dir($filepath)) {
-            mkdir($filepath, 0777, true);
-        }
-
-        $value = array(
-            'lifetime'  => $lifeTime,
-            'data'      => $data
-        );
-
-        $value  = var_export($value, true);
-        $code   = sprintf('<?php return %s;', $value);
-
-        return file_put_contents($filename, $code);
-    }
-}
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/RedisCache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/RedisCache.php
deleted file mode 100644
index 5d4814b..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/RedisCache.php
+++ /dev/null
@@ -1,119 +0,0 @@
-<?php
-
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-use Redis;
-
-/**
- * Redis cache provider.
- *
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @link    www.doctrine-project.org
- * @since   2.2
- * @author  Osman Ungur <osmanungur@gmail.com>
- */
-class RedisCache extends CacheProvider
-{
-    /**
-     * @var Redis
-     */
-    private $redis;
-
-    /**
-     * Sets the redis instance to use.
-     *
-     * @param Redis $redis
-     */
-    public function setRedis(Redis $redis)
-    {
-        $redis->setOption(Redis::OPT_SERIALIZER, Redis::SERIALIZER_IGBINARY);
-        $this->redis = $redis;
-    }
-
-    /**
-     * Gets the redis instance used by the cache.
-     *
-     * @return Redis
-     */
-    public function getRedis()
-    {
-        return $this->redis;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFetch($id)
-    {
-        return $this->redis->get($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doContains($id)
-    {
-        return $this->redis->exists($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doSave($id, $data, $lifeTime = 0)
-    {
-        $result = $this->redis->set($id, $data);
-        if ($lifeTime > 0) {
-            $this->redis->expire($id, $lifeTime);        
-        }
-        return $result;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doDelete($id)
-    {
-        return $this->redis->delete($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFlush()
-    {
-        return $this->redis->flushDB();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doGetStats()
-    {
-        $info = $this->redis->info();
-        return array(
-            Cache::STATS_HITS   => false,
-            Cache::STATS_MISSES => false,
-            Cache::STATS_UPTIME => $info['uptime_in_seconds'],
-            Cache::STATS_MEMORY_USAGE       => $info['used_memory'],
-            Cache::STATS_MEMORY_AVAILIABLE  => false
-        );
-    }
-}
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/WinCacheCache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/WinCacheCache.php
deleted file mode 100644
index 777d0fd..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/WinCacheCache.php
+++ /dev/null
@@ -1,93 +0,0 @@
-<?php
-
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-/**
- * WinCache cache provider.
- *
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @link    www.doctrine-project.org
- * @since   2.2
- * @author  Benjamin Eberlei <kontakt@beberlei.de>
- * @author  Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author  Jonathan Wage <jonwage@gmail.com>
- * @author  Roman Borschel <roman@code-factory.org>
- * @author  David Abdemoulaie <dave@hobodave.com>
- */
-class WinCacheCache extends CacheProvider
-{
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFetch($id)
-    {
-        return wincache_ucache_get($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doContains($id)
-    {
-        return wincache_ucache_exists($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doSave($id, $data, $lifeTime = 0)
-    {
-        return (bool) wincache_ucache_set($id, $data, (int) $lifeTime);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doDelete($id)
-    {
-        return wincache_ucache_delete($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFlush()
-    {
-        return wincache_ucache_clear();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doGetStats()
-    {
-        $info    = wincache_ucache_info();
-        $meminfo = wincache_ucache_meminfo();
-
-        return array(
-            Cache::STATS_HITS              => $info['total_hit_count'],
-            Cache::STATS_MISSES            => $info['total_miss_count'],
-            Cache::STATS_UPTIME            => $info['total_cache_uptime'],
-            Cache::STATS_MEMORY_USAGE      => $meminfo['memory_total'],
-            Cache::STATS_MEMORY_AVAILIABLE => $meminfo['memory_free'],
-        );
-    }
-}
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/XcacheCache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/XcacheCache.php
deleted file mode 100644
index 8733e26..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/XcacheCache.php
+++ /dev/null
@@ -1,110 +0,0 @@
-<?php
-
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-/**
- * Xcache cache driver.
- *
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @link    www.doctrine-project.org
- * @since   2.0
- * @author  Benjamin Eberlei <kontakt@beberlei.de>
- * @author  Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author  Jonathan Wage <jonwage@gmail.com>
- * @author  Roman Borschel <roman@code-factory.org>
- * @author  David Abdemoulaie <dave@hobodave.com>
- */
-class XcacheCache extends CacheProvider
-{
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFetch($id)
-    {
-        return $this->doContains($id) ? unserialize(xcache_get($id)) : false;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doContains($id)
-    {
-        return xcache_isset($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doSave($id, $data, $lifeTime = 0)
-    {
-        return xcache_set($id, serialize($data), (int) $lifeTime);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doDelete($id)
-    {
-        return xcache_unset($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFlush()
-    {
-        $this->checkAuthorization();
-
-        xcache_clear_cache(XC_TYPE_VAR, 0);
-
-        return true;
-    }
-
-    /**
-     * Checks that xcache.admin.enable_auth is Off
-     *
-     * @throws \BadMethodCallException When xcache.admin.enable_auth is On
-     * @return void
-     */
-    protected function checkAuthorization()
-    {
-        if (ini_get('xcache.admin.enable_auth')) {
-            throw new \BadMethodCallException('To use all features of \Doctrine\Common\Cache\XcacheCache, you must set "xcache.admin.enable_auth" to "Off" in your php.ini.');
-        }
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doGetStats()
-    {
-        $this->checkAuthorization();
-
-        $info = xcache_info(XC_TYPE_VAR, 0);
-        return array(
-            Cache::STATS_HITS   => $info['hits'],
-            Cache::STATS_MISSES => $info['misses'],
-            Cache::STATS_UPTIME => null,
-            Cache::STATS_MEMORY_USAGE       => $info['size'],
-            Cache::STATS_MEMORY_AVAILIABLE  => $info['avail'],
-        );
-    }
-}
diff --git a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/ZendDataCache.php b/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/ZendDataCache.php
deleted file mode 100644
index fc90bc6..0000000
--- a/core/vendor/doctrine/cache/lib/Doctrine/Common/Cache/ZendDataCache.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Cache;
-
-/**
- * Zend Data Cache cache driver.
- *
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
- * @link    www.doctrine-project.org
- * @since   2.0
- * @author  Ralph Schindler <ralph.schindler@zend.com>
- * @author  Guilherme Blanco <guilhermeblanco@hotmail.com>
- */
-class ZendDataCache extends CacheProvider
-{
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFetch($id)
-    {
-        return zend_shm_cache_fetch($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doContains($id)
-    {
-        return (false !== zend_shm_cache_fetch($id));
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doSave($id, $data, $lifeTime = 0)
-    {
-        return zend_shm_cache_store($id, $data, $lifeTime);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doDelete($id)
-    {
-        return zend_shm_cache_delete($id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doFlush()
-    {
-        $namespace = $this->getNamespace();
-        if (empty($namespace)) {
-            return zend_shm_cache_clear();
-        }
-        return zend_shm_cache_clear($namespace);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function doGetStats()
-    {
-        return null;
-    }
-}
diff --git a/core/vendor/doctrine/cache/phpunit.xml.dist b/core/vendor/doctrine/cache/phpunit.xml.dist
deleted file mode 100644
index 900378b..0000000
--- a/core/vendor/doctrine/cache/phpunit.xml.dist
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<phpunit backupGlobals="false"
-         backupStaticAttributes="false"
-         colors="true"
-         convertErrorsToExceptions="true"
-         convertNoticesToExceptions="true"
-         convertWarningsToExceptions="true"
-         processIsolation="false"
-         stopOnFailure="false"
-         syntaxCheck="false"
-         bootstrap="./tests/Doctrine/Tests/TestInit.php"
->
-    <testsuites>
-        <testsuite name="Doctrine Cache Test Suite">
-            <directory>./tests/Doctrine/</directory>
-        </testsuite>
-    </testsuites>
-
-    <filter>
-        <whitelist>
-            <directory>./lib/Doctrine/</directory>
-        </whitelist>
-    </filter>
-    
-    <groups>
-        <exclude>
-            <group>performance</group>
-        </exclude>
-    </groups>
-</phpunit>
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ApcCacheTest.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ApcCacheTest.php
deleted file mode 100644
index df81262..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ApcCacheTest.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\ApcCache;
-
-class ApcCacheTest extends CacheTest
-{
-    public function setUp()
-    {
-        if ( ! extension_loaded('apc') || false === @apc_cache_info()) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of APC');
-        }
-    }
-
-    protected function _getCacheDriver()
-    {
-        return new ApcCache();
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ArrayCacheTest.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ArrayCacheTest.php
deleted file mode 100644
index 6cad891..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ArrayCacheTest.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\ArrayCache;
-
-class ArrayCacheTest extends CacheTest
-{
-    protected function _getCacheDriver()
-    {
-        return new ArrayCache();
-    }
-
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertNull($stats);
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/CacheTest.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/CacheTest.php
deleted file mode 100644
index ea7f753..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/CacheTest.php
+++ /dev/null
@@ -1,103 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\Cache;
-
-abstract class CacheTest extends \Doctrine\Tests\DoctrineTestCase
-{
-    public function testBasics()
-    {
-        $cache = $this->_getCacheDriver();
-
-        // Test save
-        $cache->save('test_key', 'testing this out');
-
-        // Test contains to test that save() worked
-        $this->assertTrue($cache->contains('test_key'));
-
-        // Test fetch
-        $this->assertEquals('testing this out', $cache->fetch('test_key'));
-
-        // Test delete
-        $cache->save('test_key2', 'test2');
-        $cache->delete('test_key2');
-        $this->assertFalse($cache->contains('test_key2'));
-    }
-
-    public function testObjects()
-    {
-        $cache = $this->_getCacheDriver();
-
-        // Fetch/save test with objects (Is cache driver serializes/unserializes objects correctly ?)
-        $cache->save('test_object_key', new \ArrayObject());
-        $this->assertTrue($cache->fetch('test_object_key') instanceof \ArrayObject);
-    }
-
-    public function testDeleteAll()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->save('test_key1', '1');
-        $cache->save('test_key2', '2');
-        $cache->deleteAll();
-
-        $this->assertFalse($cache->contains('test_key1'));
-        $this->assertFalse($cache->contains('test_key2'));
-    }
-
-    public function testFlushAll()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->save('test_key1', '1');
-        $cache->save('test_key2', '2');
-        $cache->flushAll();
-
-        $this->assertFalse($cache->contains('test_key1'));
-        $this->assertFalse($cache->contains('test_key2'));
-    }
-
-    public function testNamespace()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->setNamespace('test_');
-        $cache->save('key1', 'test');
-
-        $this->assertTrue($cache->contains('key1'));
-
-        $cache->setNamespace('test2_');
-
-        $this->assertFalse($cache->contains('key1'));
-    }
-
-    /**
-     * @group DCOM-43
-     */
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertArrayHasKey(Cache::STATS_HITS,   $stats);
-        $this->assertArrayHasKey(Cache::STATS_MISSES, $stats);
-        $this->assertArrayHasKey(Cache::STATS_UPTIME, $stats);
-        $this->assertArrayHasKey(Cache::STATS_MEMORY_USAGE, $stats);
-        $this->assertArrayHasKey(Cache::STATS_MEMORY_AVAILIABLE, $stats);
-    }
-
-    /**
-     * Make sure that all supported caches return "false" instead of "null" to be compatible
-     * with ORM integration.
-     */
-    public function testFalseOnFailedFetch()
-    {
-        $cache = $this->_getCacheDriver();
-        $result = $cache->fetch('nonexistent_key');
-        $this->assertFalse($result);
-        $this->assertNotNull($result);
-    }
-
-    /**
-     * @return \Doctrine\Common\Cache\CacheProvider
-     */
-    abstract protected function _getCacheDriver();
-}
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/CouchbaseCacheTest.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/CouchbaseCacheTest.php
deleted file mode 100644
index 40d5a69..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/CouchbaseCacheTest.php
+++ /dev/null
@@ -1,47 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Couchbase;
-use Doctrine\Common\Cache\CouchbaseCache;
-
-class CouchbaseCacheTest extends CacheTest
-{
-    private $couchbase;
-
-    public function setUp()
-    {
-        if (extension_loaded('couchbase')) {
-            try {
-                $this->couchbase = new Couchbase('127.0.0.1', 'Administrator', 'password', 'default');
-            } catch(Exception $ex) {
-                 $this->markTestSkipped('Could not instantiate the Couchbase cache because of: ' . $ex);   
-            }
-        } else {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of the couchbase extension');
-        }
-    }
-
-    public function testNoExpire() 
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->save('noexpire', 'value', 0);
-        sleep(1);
-        $this->assertTrue($cache->contains('noexpire'), 'Couchbase provider should support no-expire');
-    }
-
-    public function testLongLifetime()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->save('key', 'value', 30 * 24 * 3600 + 1);
-
-        $this->assertTrue($cache->contains('key'), 'Couchbase provider should support TTL > 30 days');
-    }
-
-    protected function _getCacheDriver()
-    {
-        $driver = new CouchbaseCache();
-        $driver->setCouchbase($this->couchbase);
-        return $driver;
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/FilesystemCacheTest.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/FilesystemCacheTest.php
deleted file mode 100644
index f782e3c..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/FilesystemCacheTest.php
+++ /dev/null
@@ -1,97 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\FilesystemCache;
-
-/**
- * @group DCOM-101
- */
-class FilesystemCacheTest extends CacheTest
-{
-    /**
-     * @var \Doctrine\Common\Cache\FilesystemCache
-     */
-    private $driver;
-
-    protected function _getCacheDriver()
-    {
-        $dir = sys_get_temp_dir() . "/doctrine_cache_". uniqid();
-        $this->assertFalse(is_dir($dir));
-        
-        $this->driver = new FilesystemCache($dir);
-        $this->assertTrue(is_dir($dir));
-
-        return $this->driver;
-    }
-
-    public function testLifetime()
-    {
-        $cache = $this->_getCacheDriver();
-
-        // Test save
-        $cache->save('test_key', 'testing this out', 10);
-
-        // Test contains to test that save() worked
-        $this->assertTrue($cache->contains('test_key'));
-
-        // Test fetch
-        $this->assertEquals('testing this out', $cache->fetch('test_key'));
-
-        // access private methods
-        $getFilename        = new \ReflectionMethod($cache, 'getFilename');
-        $getNamespacedId    = new \ReflectionMethod($cache, 'getNamespacedId');
-
-        $getFilename->setAccessible(true);
-        $getNamespacedId->setAccessible(true);
-
-        $id         = $getNamespacedId->invoke($cache, 'test_key');
-        $filename   = $getFilename->invoke($cache, $id);
-
-        $data       = '';
-        $lifetime   = 0;
-        $resource   = fopen($filename, "r");
-
-        if (false !== ($line = fgets($resource))) {
-            $lifetime = (integer) $line;
-        }
-
-        while (false !== ($line = fgets($resource))) {
-            $data .= $line;
-        }
-
-        $this->assertNotEquals(0, $lifetime, "previous lifetime could not be loaded");
-
-        // update lifetime
-        $lifetime = $lifetime - 20;
-        file_put_contents($filename, $lifetime . PHP_EOL . $data);
-
-        // test expired data
-        $this->assertFalse($cache->contains('test_key'));
-        $this->assertFalse($cache->fetch('test_key'));
-    }
-
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertNull($stats);
-    }
-
-    public function tearDown()
-    {
-        $dir        = $this->driver->getDirectory();
-        $ext        = $this->driver->getExtension();
-        $iterator   = new \RecursiveDirectoryIterator($dir);
-
-        foreach (new \RecursiveIteratorIterator($iterator, \RecursiveIteratorIterator::CHILD_FIRST) as $file) {
-            if ($file->isFile()) {
-                @unlink($file->getRealPath());
-            } else {
-                @rmdir($file->getRealPath());
-            }
-        }
-    }
-
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MemcacheCacheTest.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MemcacheCacheTest.php
deleted file mode 100644
index 36c180c..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MemcacheCacheTest.php
+++ /dev/null
@@ -1,45 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\MemcacheCache;
-
-class MemcacheCacheTest extends CacheTest
-{
-    private $_memcache;
-
-    public function setUp()
-    {
-        if (extension_loaded('memcache')) {
-            $this->_memcache = new \Memcache;
-            $ok = @$this->_memcache->connect('localhost', 11211);
-            if (!$ok) {
-                $this->markTestSkipped('The ' . __CLASS__ .' requires the use of memcache');
-            }
-        } else {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of memcache');
-        }
-    }
-
-    public function testNoExpire() {
-        $cache = $this->_getCacheDriver();
-        $cache->save('noexpire', 'value', 0);
-        sleep(1);
-        $this->assertTrue($cache->contains('noexpire'), 'Memcache provider should support no-expire');
-    }
-
-    public function testLongLifetime()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->save('key', 'value', 30 * 24 * 3600 + 1);
-        $this->assertTrue($cache->contains('key'), 'Memcache provider should support TTL > 30 days');
-    }
-
-    protected function _getCacheDriver()
-    {
-        $driver = new MemcacheCache();
-        $driver->setMemcache($this->_memcache);
-        return $driver;
-    }
-
-}
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MemcachedCacheTest.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MemcachedCacheTest.php
deleted file mode 100644
index ecbe5a6..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/MemcachedCacheTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\MemcachedCache;
-
-class MemcachedCacheTest extends CacheTest
-{
-    private $memcached;
-
-    public function setUp()
-    {
-        if (extension_loaded('memcached')) {
-            $this->memcached = new \Memcached();
-            $this->memcached->setOption(\Memcached::OPT_COMPRESSION, false);
-            $this->memcached->addServer('127.0.0.1', 11211);
-
-            $fh = @fsockopen('127.0.0.1', 11211);
-            if (!$fh) {
-                $this->markTestSkipped('The ' . __CLASS__ .' requires the use of memcache');
-            }
-        } else {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of memcache');
-        }
-    }
-
-    public function testNoExpire() {
-        $cache = $this->_getCacheDriver();
-        $cache->save('noexpire', 'value', 0);
-        sleep(1);
-        $this->assertTrue($cache->contains('noexpire'), 'Memcache provider should support no-expire');
-    }
-
-    public function testLongLifetime()
-    {
-        $cache = $this->_getCacheDriver();
-        $cache->save('key', 'value', 30 * 24 * 3600 + 1);
-
-        $this->assertTrue($cache->contains('key'), 'Memcached provider should support TTL > 30 days');
-    }
-
-    protected function _getCacheDriver()
-    {
-        $driver = new MemcachedCache();
-        $driver->setMemcached($this->memcached);
-        return $driver;
-    }
-}
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/PhpFileCacheTest.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/PhpFileCacheTest.php
deleted file mode 100644
index 5085f46..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/PhpFileCacheTest.php
+++ /dev/null
@@ -1,149 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\PhpFileCache;
-
-/**
- * @group DCOM-101
- */
-class PhpFileCacheTest extends CacheTest
-{
-    /**
-     * @var \Doctrine\Common\Cache\PhpFileCache
-     */
-    private $driver;
-
-    protected function _getCacheDriver()
-    {
-        $dir = sys_get_temp_dir() . "/doctrine_cache_". uniqid();
-        $this->assertFalse(is_dir($dir));
-
-        $this->driver = new PhpFileCache($dir);
-        $this->assertTrue(is_dir($dir));
-
-        return $this->driver;
-    }
-
-    public function testObjects()
-    {
-        $this->markTestSkipped('PhpFileCache does not support saving objects that dont implement __set_state()');
-    }
-
-    public function testLifetime()
-    {
-        $cache = $this->_getCacheDriver();
-
-        // Test save
-        $cache->save('test_key', 'testing this out', 10);
-
-        // Test contains to test that save() worked
-        $this->assertTrue($cache->contains('test_key'));
-
-        // Test fetch
-        $this->assertEquals('testing this out', $cache->fetch('test_key'));
-
-        // access private methods
-        $getFilename        = new \ReflectionMethod($cache, 'getFilename');
-        $getNamespacedId    = new \ReflectionMethod($cache, 'getNamespacedId');
-
-        $getFilename->setAccessible(true);
-        $getNamespacedId->setAccessible(true);
-
-        $id     = $getNamespacedId->invoke($cache, 'test_key');
-        $path   = $getFilename->invoke($cache, $id);
-        $value  = include $path;
-
-        // update lifetime
-        $value['lifetime'] = $value['lifetime'] - 20;
-        file_put_contents($path, '<?php return unserialize(' . var_export(serialize($value), true) . ');');
-
-        // test expired data
-        $this->assertFalse($cache->contains('test_key'));
-        $this->assertFalse($cache->fetch('test_key'));
-    }
-
-    public function testImplementsSetState()
-    {
-        $cache = $this->_getCacheDriver();
-
-        // Test save
-        $cache->save('test_set_state', new SetStateClass(array(1,2,3)));
-
-        //Test __set_state call
-        $this->assertCount(0, SetStateClass::$values);
-
-        // Test fetch
-        $value = $cache->fetch('test_set_state');
-        $this->assertInstanceOf('Doctrine\Tests\Common\Cache\SetStateClass', $value);
-        $this->assertEquals(array(1,2,3), $value->getValue());
-
-        //Test __set_state call
-        $this->assertCount(1, SetStateClass::$values);
-
-        // Test contains
-        $this->assertTrue($cache->contains('test_set_state'));
-    }
-
-    public function testNotImplementsSetState()
-    {
-        $cache = $this->_getCacheDriver();
-
-        $this->setExpectedException('InvalidArgumentException');
-        $cache->save('test_not_set_state', new NotSetStateClass(array(1,2,3)));
-    }
-
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertNull($stats);
-    }
-
-    public function tearDown()
-    {
-        if (!$this->driver) {
-            return;
-        }
-
-        $dir        = $this->driver->getDirectory();
-        $ext        = $this->driver->getExtension();
-        $iterator   = new \RecursiveDirectoryIterator($dir);
-
-        foreach (new \RecursiveIteratorIterator($iterator, \RecursiveIteratorIterator::CHILD_FIRST) as $file) {
-            if ($file->isFile()) {
-                @unlink($file->getRealPath());
-            } else {
-                @rmdir($file->getRealPath());
-            }
-        }
-    }
-
-}
-
-class NotSetStateClass
-{
-    private $value;
-
-    public function __construct($value)
-    {
-        $this->value = $value;
-    }
-
-    public function getValue()
-    {
-        return $this->value;
-    }
-}
-
-class SetStateClass extends NotSetStateClass
-{
-    public static $values = array();
-
-    public static function __set_state($data)
-    {
-        self::$values = $data;
-        return new self($data['value']);
-    }
-}
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/RedisCacheTest.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/RedisCacheTest.php
deleted file mode 100644
index 45bbc75..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/RedisCacheTest.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\RedisCache;
-
-class RedisCacheTest extends CacheTest
-{
-    private $_redis;
-
-    public function setUp()
-    {
-        if (extension_loaded('redis')) {
-            $this->_redis = new \Redis();
-            $ok = @$this->_redis->connect('127.0.0.1');
-            if (!$ok) {
-                $this->markTestSkipped('The ' . __CLASS__ .' requires the use of redis');
-            }
-        } else {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of redis');
-        }
-    }
-
-    protected function _getCacheDriver()
-    {
-        $driver = new RedisCache();
-        $driver->setRedis($this->_redis);
-        return $driver;
-    }
-}
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/WinCacheCacheTest.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/WinCacheCacheTest.php
deleted file mode 100644
index cb363df..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/WinCacheCacheTest.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\WincacheCache;
-
-class WincacheCacheTest extends CacheTest
-{
-    public function setUp()
-    {
-        if ( ! extension_loaded('wincache') || ! function_exists('wincache_ucache_info')) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of Wincache');
-        }
-    }
-
-    protected function _getCacheDriver()
-    {
-        return new WincacheCache();
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/XcacheCacheTest.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/XcacheCacheTest.php
deleted file mode 100644
index 6259848..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/XcacheCacheTest.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\XcacheCache;
-
-class XcacheCacheTest extends CacheTest
-{
-    public function setUp()
-    {
-        if ( ! extension_loaded('xcache')) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of xcache');
-        }
-    }
-
-    protected function _getCacheDriver()
-    {
-        return new XcacheCache();
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ZendDataCacheTest.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ZendDataCacheTest.php
deleted file mode 100644
index cd66e15..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/Common/Cache/ZendDataCacheTest.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Cache;
-
-use Doctrine\Common\Cache\ZendDataCache;
-
-class ZendDataCacheTest extends CacheTest
-{
-    public function setUp()
-    {
-        if (!function_exists('zend_shm_cache_fetch') || (php_sapi_name() != 'apache2handler')) {
-            $this->markTestSkipped('The ' . __CLASS__ .' requires the use of Zend Data Cache which only works in apache2handler SAPI');
-        }
-    }
-
-    public function testGetStats()
-    {
-        $cache = $this->_getCacheDriver();
-        $stats = $cache->getStats();
-
-        $this->assertNull($stats);
-    }
-
-    protected function _getCacheDriver()
-    {
-        return new ZendDataCache();
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/DoctrineTestCase.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/DoctrineTestCase.php
deleted file mode 100644
index e8323d2..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/DoctrineTestCase.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-namespace Doctrine\Tests;
-
-/**
- * Base testcase class for all Doctrine testcases.
- */
-abstract class DoctrineTestCase extends \PHPUnit_Framework_TestCase
-{
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/cache/tests/Doctrine/Tests/TestInit.php b/core/vendor/doctrine/cache/tests/Doctrine/Tests/TestInit.php
deleted file mode 100644
index 7132caf..0000000
--- a/core/vendor/doctrine/cache/tests/Doctrine/Tests/TestInit.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-/*
- * This file bootstraps the test environment.
- */
-namespace Doctrine\Tests;
-
-error_reporting(E_ALL | E_STRICT);
-
-// register silently failing autoloader
-spl_autoload_register(function($class)
-{
-    if (0 === strpos($class, 'Doctrine\Tests\\')) {
-        $path = __DIR__.'/../../'.strtr($class, '\\', '/').'.php';
-        if (is_file($path) && is_readable($path)) {
-            require_once $path;
-
-            return true;
-        }
-    }
-});
-
-require_once __DIR__ . "/../../../vendor/autoload.php";
-
diff --git a/core/vendor/doctrine/collections/.travis.yml b/core/vendor/doctrine/collections/.travis.yml
deleted file mode 100644
index ecc3540..0000000
--- a/core/vendor/doctrine/collections/.travis.yml
+++ /dev/null
@@ -1,9 +0,0 @@
-language: php
-
-php:
-  - 5.3
-  - 5.4
-  - 5.5
-
-before_script:
-    - composer --prefer-source --dev install
diff --git a/core/vendor/doctrine/collections/README.md b/core/vendor/doctrine/collections/README.md
deleted file mode 100644
index 9393a55..0000000
--- a/core/vendor/doctrine/collections/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Doctrine Collections
-
-Collections Abstraction library
diff --git a/core/vendor/doctrine/collections/composer.json b/core/vendor/doctrine/collections/composer.json
deleted file mode 100644
index 7e287ba..0000000
--- a/core/vendor/doctrine/collections/composer.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
-    "name": "doctrine/collections",
-    "type": "library",
-    "description": "Collections Abstraction library",
-    "keywords": ["collections", "array", "iterator"],
-    "homepage": "http://www.doctrine-project.org",
-    "license": "MIT",
-    "authors": [
-        {"name": "Guilherme Blanco", "email": "guilhermeblanco@gmail.com"},
-        {"name": "Roman Borschel", "email": "roman@code-factory.org"},
-        {"name": "Benjamin Eberlei", "email": "kontakt@beberlei.de"},
-        {"name": "Jonathan Wage", "email": "jonwage@gmail.com"},
-        {"name": "Johannes Schmitt", "email": "schmittjoh@gmail.com"}
-    ],
-    "require": {
-        "php": ">=5.3.2"
-    },
-    "autoload": {
-        "psr-0": { "Doctrine\\Common\\Collections\\": "lib/" }
-    },
-    "extra": {
-        "branch-alias": {
-            "dev-master": "1.1.x-dev"
-        }
-    }
-}
diff --git a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/ArrayCollection.php b/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/ArrayCollection.php
deleted file mode 100644
index 9c2c8e1..0000000
--- a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/ArrayCollection.php
+++ /dev/null
@@ -1,385 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Collections;
-
-use Closure, ArrayIterator;
-use Doctrine\Common\Collections\Expr\ClosureExpressionVisitor;
-
-/**
- * An ArrayCollection is a Collection implementation that wraps a regular PHP array.
- *
- * @since  2.0
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-class ArrayCollection implements Collection, Selectable
-{
-    /**
-     * An array containing the entries of this collection.
-     *
-     * @var array
-     */
-    private $_elements;
-
-    /**
-     * Initializes a new ArrayCollection.
-     *
-     * @param array $elements
-     */
-    public function __construct(array $elements = array())
-    {
-        $this->_elements = $elements;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function toArray()
-    {
-        return $this->_elements;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function first()
-    {
-        return reset($this->_elements);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function last()
-    {
-        return end($this->_elements);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function key()
-    {
-        return key($this->_elements);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function next()
-    {
-        return next($this->_elements);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function current()
-    {
-        return current($this->_elements);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function remove($key)
-    {
-        if (isset($this->_elements[$key]) || array_key_exists($key, $this->_elements)) {
-            $removed = $this->_elements[$key];
-            unset($this->_elements[$key]);
-
-            return $removed;
-        }
-
-        return null;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function removeElement($element)
-    {
-        $key = array_search($element, $this->_elements, true);
-
-        if ($key !== false) {
-            unset($this->_elements[$key]);
-
-            return true;
-        }
-
-        return false;
-    }
-
-    /**
-     * Required by interface ArrayAccess.
-     *
-     * {@inheritDoc}
-     */
-    public function offsetExists($offset)
-    {
-        return $this->containsKey($offset);
-    }
-
-    /**
-     * Required by interface ArrayAccess.
-     *
-     * {@inheritDoc}
-     */
-    public function offsetGet($offset)
-    {
-        return $this->get($offset);
-    }
-
-    /**
-     * Required by interface ArrayAccess.
-     *
-     * {@inheritDoc}
-     */
-    public function offsetSet($offset, $value)
-    {
-        if ( ! isset($offset)) {
-            return $this->add($value);
-        }
-        return $this->set($offset, $value);
-    }
-
-    /**
-     * Required by interface ArrayAccess.
-     *
-     * {@inheritDoc}
-     */
-    public function offsetUnset($offset)
-    {
-        return $this->remove($offset);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function containsKey($key)
-    {
-        return isset($this->_elements[$key]) || array_key_exists($key, $this->_elements);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function contains($element)
-    {
-        return in_array($element, $this->_elements, true);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function exists(Closure $p)
-    {
-        foreach ($this->_elements as $key => $element) {
-            if ($p($key, $element)) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function indexOf($element)
-    {
-        return array_search($element, $this->_elements, true);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function get($key)
-    {
-        if (isset($this->_elements[$key])) {
-            return $this->_elements[$key];
-        }
-        return null;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getKeys()
-    {
-        return array_keys($this->_elements);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getValues()
-    {
-        return array_values($this->_elements);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function count()
-    {
-        return count($this->_elements);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function set($key, $value)
-    {
-        $this->_elements[$key] = $value;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function add($value)
-    {
-        $this->_elements[] = $value;
-        return true;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isEmpty()
-    {
-        return ! $this->_elements;
-    }
-
-    /**
-     * Required by interface IteratorAggregate.
-     *
-     * {@inheritDoc}
-     */
-    public function getIterator()
-    {
-        return new ArrayIterator($this->_elements);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function map(Closure $func)
-    {
-        return new static(array_map($func, $this->_elements));
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function filter(Closure $p)
-    {
-        return new static(array_filter($this->_elements, $p));
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function forAll(Closure $p)
-    {
-        foreach ($this->_elements as $key => $element) {
-            if ( ! $p($key, $element)) {
-                return false;
-            }
-        }
-
-        return true;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function partition(Closure $p)
-    {
-        $coll1 = $coll2 = array();
-        foreach ($this->_elements as $key => $element) {
-            if ($p($key, $element)) {
-                $coll1[$key] = $element;
-            } else {
-                $coll2[$key] = $element;
-            }
-        }
-        return array(new static($coll1), new static($coll2));
-    }
-
-    /**
-     * Returns a string representation of this object.
-     *
-     * @return string
-     */
-    public function __toString()
-    {
-        return __CLASS__ . '@' . spl_object_hash($this);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function clear()
-    {
-        $this->_elements = array();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function slice($offset, $length = null)
-    {
-        return array_slice($this->_elements, $offset, $length, true);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function matching(Criteria $criteria)
-    {
-        $expr     = $criteria->getWhereExpression();
-        $filtered = $this->_elements;
-
-        if ($expr) {
-            $visitor  = new ClosureExpressionVisitor();
-            $filter   = $visitor->dispatch($expr);
-            $filtered = array_filter($filtered, $filter);
-        }
-
-        if ($orderings = $criteria->getOrderings()) {
-            $next = null;
-            foreach (array_reverse($orderings) as $field => $ordering) {
-                $next = ClosureExpressionVisitor::sortByField($field, $ordering == 'DESC' ? -1 : 1, $next);
-            }
-
-            usort($filtered, $next);
-        }
-
-        $offset = $criteria->getFirstResult();
-        $length = $criteria->getMaxResults();
-
-        if ($offset || $length) {
-            $filtered = array_slice($filtered, (int)$offset, $length);
-        }
-
-        return new static($filtered);
-    }
-}
diff --git a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Collection.php b/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Collection.php
deleted file mode 100644
index 0edf054..0000000
--- a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Collection.php
+++ /dev/null
@@ -1,261 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Collections;
-
-use Closure, Countable, IteratorAggregate, ArrayAccess;
-
-/**
- * The missing (SPL) Collection/Array/OrderedMap interface.
- *
- * A Collection resembles the nature of a regular PHP array. That is,
- * it is essentially an <b>ordered map</b> that can also be used
- * like a list.
- *
- * A Collection has an internal iterator just like a PHP array. In addition,
- * a Collection can be iterated with external iterators, which is preferrable.
- * To use an external iterator simply use the foreach language construct to
- * iterate over the collection (which calls {@link getIterator()} internally) or
- * explicitly retrieve an iterator though {@link getIterator()} which can then be
- * used to iterate over the collection.
- * You can not rely on the internal iterator of the collection being at a certain
- * position unless you explicitly positioned it before. Prefer iteration with
- * external iterators.
- *
- * @since  2.0
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-interface Collection extends Countable, IteratorAggregate, ArrayAccess
-{
-    /**
-     * Adds an element at the end of the collection.
-     *
-     * @param mixed $element The element to add.
-     *
-     * @return boolean Always TRUE.
-     */
-    function add($element);
-
-    /**
-     * Clears the collection, removing all elements.
-     *
-     * @return void
-     */
-    function clear();
-
-    /**
-     * Checks whether an element is contained in the collection.
-     * This is an O(n) operation, where n is the size of the collection.
-     *
-     * @param mixed $element The element to search for.
-     *
-     * @return boolean TRUE if the collection contains the element, FALSE otherwise.
-     */
-    function contains($element);
-
-    /**
-     * Checks whether the collection is empty (contains no elements).
-     *
-     * @return boolean TRUE if the collection is empty, FALSE otherwise.
-     */
-    function isEmpty();
-
-    /**
-     * Removes the element at the specified index from the collection.
-     *
-     * @param string|integer $key The kex/index of the element to remove.
-     *
-     * @return mixed The removed element or NULL, if the collection did not contain the element.
-     */
-    function remove($key);
-
-    /**
-     * Removes the specified element from the collection, if it is found.
-     *
-     * @param mixed $element The element to remove.
-     *
-     * @return boolean TRUE if this collection contained the specified element, FALSE otherwise.
-     */
-    function removeElement($element);
-
-    /**
-     * Checks whether the collection contains an element with the specified key/index.
-     *
-     * @param string|integer $key The key/index to check for.
-     *
-     * @return boolean TRUE if the collection contains an element with the specified key/index,
-     *                 FALSE otherwise.
-     */
-    function containsKey($key);
-
-    /**
-     * Gets the element at the specified key/index.
-     *
-     * @param string|integer $key The key/index of the element to retrieve.
-     *
-     * @return mixed
-     */
-    function get($key);
-
-    /**
-     * Gets all keys/indices of the collection.
-     *
-     * @return array The keys/indices of the collection, in the order of the corresponding
-     *               elements in the collection.
-     */
-    function getKeys();
-
-    /**
-     * Gets all values of the collection.
-     *
-     * @return array The values of all elements in the collection, in the order they
-     *               appear in the collection.
-     */
-    function getValues();
-
-    /**
-     * Sets an element in the collection at the specified key/index.
-     *
-     * @param string|integer $key   The key/index of the element to set.
-     * @param mixed          $value The element to set.
-     *
-     * @return void
-     */
-    function set($key, $value);
-
-    /**
-     * Gets a native PHP array representation of the collection.
-     *
-     * @return array
-     */
-    function toArray();
-
-    /**
-     * Sets the internal iterator to the first element in the collection and returns this element.
-     *
-     * @return mixed
-     */
-    function first();
-
-    /**
-     * Sets the internal iterator to the last element in the collection and returns this element.
-     *
-     * @return mixed
-     */
-    function last();
-
-    /**
-     * Gets the key/index of the element at the current iterator position.
-     *
-     * @return int|string
-     */
-    function key();
-
-    /**
-     * Gets the element of the collection at the current iterator position.
-     *
-     * @return mixed
-     */
-    function current();
-
-    /**
-     * Moves the internal iterator position to the next element and returns this element.
-     *
-     * @return mixed
-     */
-    function next();
-
-    /**
-     * Tests for the existence of an element that satisfies the given predicate.
-     *
-     * @param Closure $p The predicate.
-     *
-     * @return boolean TRUE if the predicate is TRUE for at least one element, FALSE otherwise.
-     */
-    function exists(Closure $p);
-
-    /**
-     * Returns all the elements of this collection that satisfy the predicate p.
-     * The order of the elements is preserved.
-     *
-     * @param Closure $p The predicate used for filtering.
-     *
-     * @return Collection A collection with the results of the filter operation.
-     */
-    function filter(Closure $p);
-
-    /**
-     * Applies the given predicate p to all elements of this collection,
-     * returning true, if the predicate yields true for all elements.
-     *
-     * @param Closure $p The predicate.
-     *
-     * @return boolean TRUE, if the predicate yields TRUE for all elements, FALSE otherwise.
-     */
-    function forAll(Closure $p);
-
-    /**
-     * Applies the given function to each element in the collection and returns
-     * a new collection with the elements returned by the function.
-     *
-     * @param Closure $func
-     *
-     * @return Collection
-     */
-    function map(Closure $func);
-
-    /**
-     * Partitions this collection in two collections according to a predicate.
-     * Keys are preserved in the resulting collections.
-     *
-     * @param Closure $p The predicate on which to partition.
-     *
-     * @return array An array with two elements. The first element contains the collection
-     *               of elements where the predicate returned TRUE, the second element
-     *               contains the collection of elements where the predicate returned FALSE.
-     */
-    function partition(Closure $p);
-
-    /**
-     * Gets the index/key of a given element. The comparison of two elements is strict,
-     * that means not only the value but also the type must match.
-     * For objects this means reference equality.
-     *
-     * @param mixed $element The element to search for.
-     *
-     * @return int|string|bool The key/index of the element or FALSE if the element was not found.
-     */
-    function indexOf($element);
-
-    /**
-     * Extracts a slice of $length elements starting at position $offset from the Collection.
-     *
-     * If $length is null it returns all elements from $offset to the end of the Collection.
-     * Keys have to be preserved by this method. Calling this method will only return the
-     * selected slice and NOT change the elements contained in the collection slice is called on.
-     *
-     * @param int      $offset The offset to start from.
-     * @param int|null $length The maximum number of elements to return, or null for no limit.
-     *
-     * @return array
-     */
-    function slice($offset, $length = null);
-}
diff --git a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Criteria.php b/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Criteria.php
deleted file mode 100644
index 42929bd..0000000
--- a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Criteria.php
+++ /dev/null
@@ -1,245 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Collections;
-
-use Doctrine\Common\Collections\Expr\Expression;
-use Doctrine\Common\Collections\Expr\CompositeExpression;
-
-/**
- * Criteria for filtering Selectable collections.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @since 2.3
- */
-class Criteria
-{
-    /**
-     * @var string
-     */
-    const ASC  = 'ASC';
-
-    /**
-     * @var string
-     */
-    const DESC = 'DESC';
-
-    /**
-     * @var \Doctrine\Common\Collections\ExpressionBuilder|null
-     */
-    private static $expressionBuilder;
-
-    /**
-     * @var \Doctrine\Common\Collections\Expr\Expression|null
-     */
-    private $expression;
-
-    /**
-     * @var array|null
-     */
-    private $orderings;
-
-    /**
-     * @var int|null
-     */
-    private $firstResult;
-
-    /**
-     * @var int|null
-     */
-    private $maxResults;
-
-    /**
-     * Creates an instance of the class.
-     *
-     * @return Criteria
-     */
-    public static function create()
-    {
-        return new static();
-    }
-
-    /**
-     * Returns the expression builder.
-     *
-     * @return \Doctrine\Common\Collections\ExpressionBuilder
-     */
-    public static function expr()
-    {
-        if (self::$expressionBuilder === null) {
-            self::$expressionBuilder = new ExpressionBuilder();
-        }
-        return self::$expressionBuilder;
-    }
-
-    /**
-     * Construct a new Criteria.
-     *
-     * @param Expression $expression
-     * @param array|null $orderings
-     * @param int|null   $firstResult
-     * @param int|null   $maxResults
-     */
-    public function __construct(Expression $expression = null, array $orderings = null, $firstResult = null, $maxResults = null)
-    {
-        $this->expression  = $expression;
-        $this->orderings   = $orderings;
-        $this->firstResult = $firstResult;
-        $this->maxResults  = $maxResults;
-    }
-
-    /**
-     * Sets the where expression to evaluate when this Criteria is searched for.
-     *
-     * @param Expression $expression
-     *
-     * @return Criteria
-     */
-    public function where(Expression $expression)
-    {
-        $this->expression = $expression;
-        return $this;
-    }
-
-    /**
-     * Appends the where expression to evaluate when this Criteria is searched for
-     * using an AND with previous expression.
-     *
-     * @param Expression $expression
-     *
-     * @return Criteria
-     */
-    public function andWhere(Expression $expression)
-    {
-        if ($this->expression === null) {
-            return $this->where($expression);
-        }
-
-        $this->expression = new CompositeExpression(CompositeExpression::TYPE_AND, array(
-            $this->expression, $expression
-        ));
-
-        return $this;
-    }
-
-    /**
-     * Appends the where expression to evaluate when this Criteria is searched for
-     * using an OR with previous expression.
-     *
-     * @param Expression $expression
-     *
-     * @return Criteria
-     */
-    public function orWhere(Expression $expression)
-    {
-        if ($this->expression === null) {
-            return $this->where($expression);
-        }
-
-        $this->expression = new CompositeExpression(CompositeExpression::TYPE_OR, array(
-            $this->expression, $expression
-        ));
-
-        return $this;
-    }
-
-    /**
-     * Gets the expression attached to this Criteria.
-     *
-     * @return Expression|null
-     */
-    public function getWhereExpression()
-    {
-        return $this->expression;
-    }
-
-    /**
-     * Gets the current orderings of this Criteria.
-     *
-     * @return array
-     */
-    public function getOrderings()
-    {
-        return $this->orderings;
-    }
-
-    /**
-     * Sets the ordering of the result of this Criteria.
-     *
-     * Keys are field and values are the order, being either ASC or DESC.
-     *
-     * @see Criteria::ASC
-     * @see Criteria::DESC
-     *
-     * @param array $orderings
-     *
-     * @return Criteria
-     */
-    public function orderBy(array $orderings)
-    {
-        $this->orderings = $orderings;
-        return $this;
-    }
-
-    /**
-     * Gets the current first result option of this Criteria.
-     *
-     * @return int|null
-     */
-    public function getFirstResult()
-    {
-        return $this->firstResult;
-    }
-
-    /**
-     * Set the number of first result that this Criteria should return.
-     *
-     * @param int|null $firstResult The value to set.
-     *
-     * @return Criteria
-     */
-    public function setFirstResult($firstResult)
-    {
-        $this->firstResult = $firstResult;
-        return $this;
-    }
-
-    /**
-     * Gets maxResults.
-     *
-     * @return int|null
-     */
-    public function getMaxResults()
-    {
-        return $this->maxResults;
-    }
-
-    /**
-     * Sets maxResults.
-     *
-     * @param int|null $maxResults The value to set.
-     *
-     * @return Criteria
-     */
-    public function setMaxResults($maxResults)
-    {
-        $this->maxResults = $maxResults;
-        return $this;
-    }
-}
diff --git a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/ClosureExpressionVisitor.php b/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/ClosureExpressionVisitor.php
deleted file mode 100644
index 78a0755..0000000
--- a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/ClosureExpressionVisitor.php
+++ /dev/null
@@ -1,224 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Collections\Expr;
-
-/**
- * Walks an expression graph and turns it into a PHP closure.
- *
- * This closure can be used with {@Collection#filter()} and is used internally
- * by {@ArrayCollection#select()}.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @since  2.3
- */
-class ClosureExpressionVisitor extends ExpressionVisitor
-{
-    /**
-     * Accesses the field of a given object. This field has to be public
-     * directly or indirectly (through an accessor get*, is*, or a magic
-     * method, __get, __call).
-     *
-     * @param object $object
-     * @param string $field
-     *
-     * @return mixed
-     */
-    public static function getObjectFieldValue($object, $field)
-    {
-        $accessors = array('get', 'is');
-
-        foreach ($accessors as $accessor) {
-            $accessor .= $field;
-
-            if ( ! method_exists($object, $accessor)) {
-                continue;
-            }
-
-            return $object->$accessor();
-        }
-
-        // __call should be triggered for get.
-        $accessor = $accessors[0] . $field;
-
-        if (method_exists($object, '__call')) {
-            return $object->$accessor();
-        }
-
-        if ($object instanceof \ArrayAccess || is_array($object)) {
-            return $object[$field];
-        }
-
-        return $object->$field;
-    }
-
-    /**
-     * Helper for sorting arrays of objects based on multiple fields + orientations.
-     *
-     * @param string   $name
-     * @param int      $orientation
-     * @param \Closure $next
-     *
-     * @return \Closure
-     */
-    public static function sortByField($name, $orientation = 1, \Closure $next = null)
-    {
-        if (!$next) {
-            $next = function() {
-                return 0;
-            };
-        }
-
-        return function ($a, $b) use ($name, $next, $orientation) {
-            $aValue = ClosureExpressionVisitor::getObjectFieldValue($a, $name);
-            $bValue = ClosureExpressionVisitor::getObjectFieldValue($b, $name);
-
-            if ($aValue === $bValue) {
-                return $next($a, $b);
-            }
-
-            return (($aValue > $bValue) ? 1 : -1) * $orientation;
-        };
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function walkComparison(Comparison $comparison)
-    {
-        $field = $comparison->getField();
-        $value = $comparison->getValue()->getValue(); // shortcut for walkValue()
-
-        switch ($comparison->getOperator()) {
-            case Comparison::EQ:
-            case Comparison::IS:
-                return function ($object) use ($field, $value) {
-                    return ClosureExpressionVisitor::getObjectFieldValue($object, $field) === $value;
-                };
-
-            case Comparison::NEQ:
-                return function ($object) use ($field, $value) {
-                    return ClosureExpressionVisitor::getObjectFieldValue($object, $field) !== $value;
-                };
-
-            case Comparison::LT:
-                return function ($object) use ($field, $value) {
-                    return ClosureExpressionVisitor::getObjectFieldValue($object, $field) < $value;
-                };
-
-            case Comparison::LTE:
-                return function ($object) use ($field, $value) {
-                    return ClosureExpressionVisitor::getObjectFieldValue($object, $field) <= $value;
-                };
-
-            case Comparison::GT:
-                return function ($object) use ($field, $value) {
-                    return ClosureExpressionVisitor::getObjectFieldValue($object, $field) > $value;
-                };
-
-            case Comparison::GTE:
-                return function ($object) use ($field, $value) {
-                    return ClosureExpressionVisitor::getObjectFieldValue($object, $field) >= $value;
-                };
-
-            case Comparison::IN:
-                return function ($object) use ($field, $value) {
-                    return in_array(ClosureExpressionVisitor::getObjectFieldValue($object, $field), $value);
-                };
-
-            case Comparison::NIN:
-                return function ($object) use ($field, $value) {
-                    return ! in_array(ClosureExpressionVisitor::getObjectFieldValue($object, $field), $value);
-                };
-
-            case Comparison::CONTAINS:
-                return function ($object) use ($field, $value) {
-                    return false !== strpos(ClosureExpressionVisitor::getObjectFieldValue($object, $field), $value);
-                };
-
-            default:
-                throw new \RuntimeException("Unknown comparison operator: " . $comparison->getOperator());
-        }
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function walkValue(Value $value)
-    {
-        return $value->getValue();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function walkCompositeExpression(CompositeExpression $expr)
-    {
-        $expressionList = array();
-
-        foreach ($expr->getExpressionList() as $child) {
-            $expressionList[] = $this->dispatch($child);
-        }
-
-        switch($expr->getType()) {
-            case CompositeExpression::TYPE_AND:
-                return $this->andExpressions($expressionList);
-
-            case CompositeExpression::TYPE_OR:
-                return $this->orExpressions($expressionList);
-
-            default:
-                throw new \RuntimeException("Unknown composite " . $expr->getType());
-        }
-    }
-
-    /**
-     * @param array $expressions
-     *
-     * @return callable
-     */
-    private function andExpressions($expressions)
-    {
-        return function ($object) use ($expressions) {
-            foreach ($expressions as $expression) {
-                if ( ! $expression($object)) {
-                    return false;
-                }
-            }
-            return true;
-        };
-    }
-
-    /**
-     * @param array $expressions
-     *
-     * @return callable
-     */
-    private function orExpressions($expressions)
-    {
-        return function ($object) use ($expressions) {
-            foreach ($expressions as $expression) {
-                if ($expression($object)) {
-                    return true;
-                }
-            }
-            return false;
-        };
-    }
-}
diff --git a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/Comparison.php b/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/Comparison.php
deleted file mode 100644
index 641feec..0000000
--- a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/Comparison.php
+++ /dev/null
@@ -1,103 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Collections\Expr;
-
-/**
- * Comparison of a field with a value by the given operator.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @since  2.3
- */
-class Comparison implements Expression
-{
-    const EQ        = '=';
-    const NEQ       = '<>';
-    const LT        = '<';
-    const LTE       = '<=';
-    const GT        = '>';
-    const GTE       = '>=';
-    const IS        = 'IS';
-    const IN        = 'IN';
-    const NIN       = 'NIN';
-    const CONTAINS  = 'CONTAINS';
-
-    /**
-     * @var string
-     */
-    private $field;
-
-    /**
-     * @var string
-     */
-    private $op;
-
-    /**
-     * @var Value
-     */
-    private $value;
-
-    /**
-     * @param string $field
-     * @param string $operator
-     * @param mixed  $value
-     */
-    public function __construct($field, $operator, $value)
-    {
-        if ( ! ($value instanceof Value)) {
-            $value = new Value($value);
-        }
-
-        $this->field = $field;
-        $this->op = $operator;
-        $this->value = $value;
-    }
-
-    /**
-     * @return string
-     */
-    public function getField()
-    {
-        return $this->field;
-    }
-
-    /**
-     * @return Value
-     */
-    public function getValue()
-    {
-        return $this->value;
-    }
-
-    /**
-     * @return string
-     */
-    public function getOperator()
-    {
-        return $this->op;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function visit(ExpressionVisitor $visitor)
-    {
-        return $visitor->walkComparison($this);
-    }
-}
diff --git a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/CompositeExpression.php b/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/CompositeExpression.php
deleted file mode 100644
index 3613c02..0000000
--- a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/CompositeExpression.php
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Collections\Expr;
-
-/**
- * Expression of Expressions combined by AND or OR operation.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @since  2.3
- */
-class CompositeExpression implements Expression
-{
-    const TYPE_AND = 'AND';
-    const TYPE_OR = 'OR';
-
-    /**
-     * @var string
-     */
-    private $type;
-
-    /**
-     * @var Expression[]
-     */
-    private $expressions = array();
-
-    /**
-     * @param string $type
-     * @param array  $expressions
-     *
-     * @throws \RuntimeException
-     */
-    public function __construct($type, array $expressions)
-    {
-        $this->type = $type;
-
-        foreach ($expressions as $expr) {
-            if ($expr instanceof Value) {
-                throw new \RuntimeException("Values are not supported expressions as children of and/or expressions.");
-            }
-            if ( ! ($expr instanceof Expression)) {
-                throw new \RuntimeException("No expression given to CompositeExpression.");
-            }
-
-            $this->expressions[] = $expr;
-        }
-    }
-
-    /**
-     * Returns the list of expressions nested in this composite.
-     *
-     * @return Expression[]
-     */
-    public function getExpressionList()
-    {
-        return $this->expressions;
-    }
-
-    /**
-     * @return string
-     */
-    public function getType()
-    {
-        return $this->type;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function visit(ExpressionVisitor $visitor)
-    {
-        return $visitor->walkCompositeExpression($this);
-    }
-}
diff --git a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/Expression.php b/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/Expression.php
deleted file mode 100644
index 68db767..0000000
--- a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/Expression.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Collections\Expr;
-
-/**
- * Expression for the {@link Selectable} interface.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-interface Expression
-{
-    /**
-     * @param ExpressionVisitor $visitor
-     *
-     * @return mixed
-     */
-    public function visit(ExpressionVisitor $visitor);
-}
diff --git a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/ExpressionVisitor.php b/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/ExpressionVisitor.php
deleted file mode 100644
index 080afdc..0000000
--- a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/ExpressionVisitor.php
+++ /dev/null
@@ -1,82 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Collections\Expr;
-
-/**
- * An Expression visitor walks a graph of expressions and turns them into a
- * query for the underlying implementation.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-abstract class ExpressionVisitor
-{
-    /**
-     * Converts a comparison expression into the target query language output.
-     *
-     * @param Comparison $comparison
-     *
-     * @return mixed
-     */
-    abstract public function walkComparison(Comparison $comparison);
-
-    /**
-     * Converts a value expression into the target query language part.
-     *
-     * @param Value $value
-     *
-     * @return mixed
-     */
-    abstract public function walkValue(Value $value);
-
-    /**
-     * Converts a composite expression into the target query language output.
-     *
-     * @param CompositeExpression $expr
-     *
-     * @return mixed
-     */
-    abstract public function walkCompositeExpression(CompositeExpression $expr);
-
-    /**
-     * Dispatches walking an expression to the appropriate handler.
-     *
-     * @param Expression $expr
-     *
-     * @return mixed
-     *
-     * @throws \RuntimeException
-     */
-    public function dispatch(Expression $expr)
-    {
-        switch (true) {
-            case ($expr instanceof Comparison):
-                return $this->walkComparison($expr);
-
-            case ($expr instanceof Value):
-                return $this->walkValue($expr);
-
-            case ($expr instanceof CompositeExpression):
-                return $this->walkCompositeExpression($expr);
-
-            default:
-                throw new \RuntimeException("Unknown Expression " . get_class($expr));
-        }
-    }
-}
diff --git a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/Value.php b/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/Value.php
deleted file mode 100644
index 7f6e831..0000000
--- a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Expr/Value.php
+++ /dev/null
@@ -1,52 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Collections\Expr;
-
-class Value implements Expression
-{
-    /**
-     * @var mixed
-     */
-    private $value;
-
-    /**
-     * @param mixed $value
-     */
-    public function __construct($value)
-    {
-        $this->value = $value;
-    }
-
-    /**
-     * @return mixed
-     */
-    public function getValue()
-    {
-        return $this->value;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function visit(ExpressionVisitor $visitor)
-    {
-        return $visitor->walkValue($this);
-    }
-}
diff --git a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/ExpressionBuilder.php b/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/ExpressionBuilder.php
deleted file mode 100644
index 2bd7eaa..0000000
--- a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/ExpressionBuilder.php
+++ /dev/null
@@ -1,162 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Collections;
-
-use Doctrine\Common\Collections\Expr\Comparison;
-use Doctrine\Common\Collections\Expr\CompositeExpression;
-use Doctrine\Common\Collections\Expr\Value;
-
-/**
- * Builder for Expressions in the {@link Selectable} interface.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @since  2.3
- */
-class ExpressionBuilder
-{
-    /**
-     * @param mixed $x
-     *
-     * @return CompositeExpression
-     */
-    public function andX($x = null)
-    {
-        return new CompositeExpression(CompositeExpression::TYPE_AND, func_get_args());
-    }
-
-    /**
-     * @param mixed $x
-     *
-     * @return CompositeExpression
-     */
-    public function orX($x = null)
-    {
-        return new CompositeExpression(CompositeExpression::TYPE_OR, func_get_args());
-    }
-
-    /**
-     * @param string $field
-     * @param mixed  $value
-     *
-     * @return Comparison
-     */
-    public function eq($field, $value)
-    {
-        return new Comparison($field, Comparison::EQ, new Value($value));
-    }
-
-    /**
-     * @param string $field
-     * @param mixed  $value
-     *
-     * @return Comparison
-     */
-    public function gt($field, $value)
-    {
-        return new Comparison($field, Comparison::GT, new Value($value));
-    }
-
-    /**
-     * @param string $field
-     * @param mixed  $value
-     *
-     * @return Comparison
-     */
-    public function lt($field, $value)
-    {
-        return new Comparison($field, Comparison::LT, new Value($value));
-    }
-
-    /**
-     * @param string $field
-     * @param mixed  $value
-     *
-     * @return Comparison
-     */
-    public function gte($field, $value)
-    {
-        return new Comparison($field, Comparison::GTE, new Value($value));
-    }
-
-    /**
-     * @param string $field
-     * @param mixed  $value
-     *
-     * @return Comparison
-     */
-    public function lte($field, $value)
-    {
-        return new Comparison($field, Comparison::LTE, new Value($value));
-    }
-
-    /**
-     * @param string $field
-     * @param mixed  $value
-     *
-     * @return Comparison
-     */
-    public function neq($field, $value)
-    {
-        return new Comparison($field, Comparison::NEQ, new Value($value));
-    }
-
-    /**
-     * @param string $field
-     *
-     * @return Comparison
-     */
-    public function isNull($field)
-    {
-        return new Comparison($field, Comparison::IS, new Value(null));
-    }
-
-    /**
-     * @param string $field
-     * @param mixed  $values
-     *
-     * @return Comparison
-     */
-    public function in($field, array $values)
-    {
-        return new Comparison($field, Comparison::IN, new Value($values));
-    }
-
-    /**
-     * @param string $field
-     * @param mixed  $values
-     *
-     * @return Comparison
-     */
-    public function notIn($field, array $values)
-    {
-        return new Comparison($field, Comparison::NIN, new Value($values));
-    }
-
-    /**
-     * @param string $field
-     * @param mixed  $value
-     *
-     * @return Comparison
-     */
-    public function contains($field, $value)
-    {
-        return new Comparison($field, Comparison::CONTAINS, new Value($value));
-    }
-}
diff --git a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Selectable.php b/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Selectable.php
deleted file mode 100644
index 401d46e..0000000
--- a/core/vendor/doctrine/collections/lib/Doctrine/Common/Collections/Selectable.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Collections;
-
-/**
- * Interface for collections that allow efficient filtering with an expression API.
- *
- * Goal of this interface is a backend independent method to fetch elements
- * from a collections. {@link Expression} is crafted in a way that you can
- * implement queries from both in-memory and database-backed collections.
- *
- * For database backed collections this allows very efficient access by
- * utilizing the query APIs, for example SQL in the ORM. Applications using
- * this API can implement efficient database access without having to ask the
- * EntityManager or Repositories.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @since  2.3
- */
-interface Selectable
-{
-    /**
-     * Selects all elements from a selectable that match the expression and
-     * returns a new collection containing these elements.
-     *
-     * @param Criteria $criteria
-     *
-     * @return Collection
-     */
-    function matching(Criteria $criteria);
-}
diff --git a/core/vendor/doctrine/collections/phpunit.xml.dist b/core/vendor/doctrine/collections/phpunit.xml.dist
deleted file mode 100644
index 36968e9..0000000
--- a/core/vendor/doctrine/collections/phpunit.xml.dist
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<phpunit backupGlobals="false"
-         backupStaticAttributes="false"
-         colors="true"
-         convertErrorsToExceptions="true"
-         convertNoticesToExceptions="true"
-         convertWarningsToExceptions="true"
-         processIsolation="false"
-         stopOnFailure="false"
-         syntaxCheck="false"
-         bootstrap="./tests/Doctrine/Tests/TestInit.php"
->
-    <testsuites>
-        <testsuite name="Doctrine Collections Test Suite">
-            <directory>./tests/Doctrine/</directory>
-        </testsuite>
-    </testsuites>
-
-    <filter>
-        <whitelist>
-            <directory>./lib/Doctrine/</directory>
-        </whitelist>
-    </filter>
-    
-    <groups>
-        <exclude>
-            <group>performance</group>
-        </exclude>
-    </groups>
-</phpunit>
diff --git a/core/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ClosureExpressionVisitorTest.php b/core/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ClosureExpressionVisitorTest.php
deleted file mode 100644
index b640043..0000000
--- a/core/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ClosureExpressionVisitorTest.php
+++ /dev/null
@@ -1,243 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Collections;
-
-use Doctrine\Common\Collections\Expr\ClosureExpressionVisitor;
-use Doctrine\Common\Collections\ExpressionBuilder;
-
-/**
- * @group DDC-1637
- */
-class ClosureExpressionVisitorTest extends \PHPUnit_Framework_TestCase
-{
-    private $visitor;
-    private $builder;
-
-    public function setUp()
-    {
-        $this->visitor = new ClosureExpressionVisitor();
-        $this->builder = new ExpressionBuilder();
-    }
-
-    public function testGetObjectFieldValueIsAccessor()
-    {
-        $object = new TestObject(1, 2, true);
-
-        $this->assertTrue($this->visitor->getObjectFieldValue($object, 'baz'));
-    }
-
-    public function testGetObjectFieldValueMagicCallMethod()
-    {
-        $object = new TestObject(1, 2, true, 3);
-
-        $this->assertEquals(3, $this->visitor->getObjectFieldValue($object, 'qux'));
-    }
-
-    public function testWalkEqualsComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->eq("foo", 1));
-
-        $this->assertTrue($closure(new TestObject(1)));
-        $this->assertFalse($closure(new TestObject(2)));
-    }
-
-    public function testWalkNotEqualsComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->neq("foo", 1));
-
-        $this->assertFalse($closure(new TestObject(1)));
-        $this->assertTrue($closure(new TestObject(2)));
-    }
-
-    public function testWalkLessThanComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->lt("foo", 1));
-
-        $this->assertFalse($closure(new TestObject(1)));
-        $this->assertTrue($closure(new TestObject(0)));
-    }
-
-    public function testWalkLessThanEqualsComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->lte("foo", 1));
-
-        $this->assertFalse($closure(new TestObject(2)));
-        $this->assertTrue($closure(new TestObject(1)));
-        $this->assertTrue($closure(new TestObject(0)));
-    }
-
-    public function testWalkGreaterThanEqualsComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->gte("foo", 1));
-
-        $this->assertTrue($closure(new TestObject(2)));
-        $this->assertTrue($closure(new TestObject(1)));
-        $this->assertFalse($closure(new TestObject(0)));
-    }
-
-    public function testWalkGreaterThanComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->gt("foo", 1));
-
-        $this->assertTrue($closure(new TestObject(2)));
-        $this->assertFalse($closure(new TestObject(1)));
-        $this->assertFalse($closure(new TestObject(0)));
-    }
-
-    public function testWalkInComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->in("foo", array(1, 2, 3)));
-
-        $this->assertTrue($closure(new TestObject(2)));
-        $this->assertTrue($closure(new TestObject(1)));
-        $this->assertFalse($closure(new TestObject(0)));
-    }
-
-    public function testWalkNotInComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->notIn("foo", array(1, 2, 3)));
-
-        $this->assertFalse($closure(new TestObject(1)));
-        $this->assertFalse($closure(new TestObject(2)));
-        $this->assertTrue($closure(new TestObject(0)));
-        $this->assertTrue($closure(new TestObject(4)));
-    }
-
-    public function testWalkContainsComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->contains('foo', 'hello'));
-
-        $this->assertTrue($closure(new TestObject('hello world')));
-        $this->assertFalse($closure(new TestObject('world')));
-    }
-
-    public function testWalkAndCompositeExpression()
-    {
-        $closure = $this->visitor->walkCompositeExpression(
-            $this->builder->andX(
-                $this->builder->eq("foo", 1),
-                $this->builder->eq("bar", 1)
-            )
-        );
-
-        $this->assertTrue($closure(new TestObject(1, 1)));
-        $this->assertFalse($closure(new TestObject(1, 0)));
-        $this->assertFalse($closure(new TestObject(0, 1)));
-        $this->assertFalse($closure(new TestObject(0, 0)));
-    }
-
-    public function testWalkOrCompositeExpression()
-    {
-        $closure = $this->visitor->walkCompositeExpression(
-            $this->builder->orX(
-                $this->builder->eq("foo", 1),
-                $this->builder->eq("bar", 1)
-            )
-        );
-
-        $this->assertTrue($closure(new TestObject(1, 1)));
-        $this->assertTrue($closure(new TestObject(1, 0)));
-        $this->assertTrue($closure(new TestObject(0, 1)));
-        $this->assertFalse($closure(new TestObject(0, 0)));
-    }
-
-    public function testSortByFieldAscending()
-    {
-        $objects = array(new TestObject("b"), new TestObject("a"), new TestObject("c"));
-        $sort = ClosureExpressionVisitor::sortByField("foo");
-
-        usort($objects, $sort);
-
-        $this->assertEquals("a", $objects[0]->getFoo());
-        $this->assertEquals("b", $objects[1]->getFoo());
-        $this->assertEquals("c", $objects[2]->getFoo());
-    }
-
-    public function testSortByFieldDescending()
-    {
-        $objects = array(new TestObject("b"), new TestObject("a"), new TestObject("c"));
-        $sort = ClosureExpressionVisitor::sortByField("foo", -1);
-
-        usort($objects, $sort);
-
-        $this->assertEquals("c", $objects[0]->getFoo());
-        $this->assertEquals("b", $objects[1]->getFoo());
-        $this->assertEquals("a", $objects[2]->getFoo());
-    }
-
-    public function testSortDelegate()
-    {
-        $objects = array(new TestObject("a", "c"), new TestObject("a", "b"), new TestObject("a", "a"));
-        $sort = ClosureExpressionVisitor::sortByField("bar", 1);
-        $sort = ClosureExpressionVisitor::sortByField("foo", 1, $sort);
-
-        usort($objects, $sort);
-
-        $this->assertEquals("a", $objects[0]->getBar());
-        $this->assertEquals("b", $objects[1]->getBar());
-        $this->assertEquals("c", $objects[2]->getBar());
-    }
-
-    public function testArrayComparison()
-    {
-        $closure = $this->visitor->walkComparison($this->builder->eq("foo", 42));
-
-        $this->assertTrue($closure(array('foo' => 42)));
-    }
-}
-
-class TestObject
-{
-    private $foo;
-    private $bar;
-    private $baz;
-    private $qux;
-
-    public function __construct($foo = null, $bar = null, $baz = null, $qux = null)
-    {
-        $this->foo = $foo;
-        $this->bar = $bar;
-        $this->baz = $baz;
-        $this->qux = $qux;
-    }
-
-    public function __call($name, $arguments)
-    {
-        if ('getqux' === $name) {
-            return $this->qux;
-        }
-    }
-
-    public function getFoo()
-    {
-        return $this->foo;
-    }
-
-    public function getBar()
-    {
-        return $this->bar;
-    }
-
-    public function isBaz()
-    {
-        return $this->baz;
-    }
-}
-
diff --git a/core/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/CollectionTest.php b/core/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/CollectionTest.php
deleted file mode 100644
index d98246c..0000000
--- a/core/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/CollectionTest.php
+++ /dev/null
@@ -1,264 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Collections;
-
-use Doctrine\Tests;
-use Doctrine\Common\Collections\Criteria;
-
-class CollectionTest extends \Doctrine\Tests\DoctrineTestCase
-{
-    /**
-     * @var \Doctrine\Common\Collections\Collection
-     */
-    private $_coll;
-
-    protected function setUp()
-    {
-        $this->_coll = new \Doctrine\Common\Collections\ArrayCollection;
-    }
-
-    public function testIssetAndUnset()
-    {
-        $this->assertFalse(isset($this->_coll[0]));
-        $this->_coll->add('testing');
-        $this->assertTrue(isset($this->_coll[0]));
-        unset($this->_coll[0]);
-        $this->assertFalse(isset($this->_coll[0]));
-    }
-
-    public function testToString()
-    {
-        $this->_coll->add('testing');
-        $this->assertTrue(is_string((string) $this->_coll));
-    }
-
-    public function testRemovingNonExistentEntryReturnsNull()
-    {
-        $this->assertEquals(null, $this->_coll->remove('testing_does_not_exist'));
-    }
-
-    public function testExists()
-    {
-        $this->_coll->add("one");
-        $this->_coll->add("two");
-        $exists = $this->_coll->exists(function($k, $e) { return $e == "one"; });
-        $this->assertTrue($exists);
-        $exists = $this->_coll->exists(function($k, $e) { return $e == "other"; });
-        $this->assertFalse($exists);
-    }
-
-    public function testMap()
-    {
-        $this->_coll->add(1);
-        $this->_coll->add(2);
-        $res = $this->_coll->map(function($e) { return $e * 2; });
-        $this->assertEquals(array(2, 4), $res->toArray());
-    }
-
-    public function testFilter()
-    {
-        $this->_coll->add(1);
-        $this->_coll->add("foo");
-        $this->_coll->add(3);
-        $res = $this->_coll->filter(function($e) { return is_numeric($e); });
-        $this->assertEquals(array(0 => 1, 2 => 3), $res->toArray());
-    }
-
-    public function testFirstAndLast()
-    {
-        $this->_coll->add('one');
-        $this->_coll->add('two');
-
-        $this->assertEquals($this->_coll->first(), 'one');
-        $this->assertEquals($this->_coll->last(), 'two');
-    }
-
-    public function testArrayAccess()
-    {
-        $this->_coll[] = 'one';
-        $this->_coll[] = 'two';
-
-        $this->assertEquals($this->_coll[0], 'one');
-        $this->assertEquals($this->_coll[1], 'two');
-
-        unset($this->_coll[0]);
-        $this->assertEquals($this->_coll->count(), 1);
-    }
-
-    public function testContainsKey()
-    {
-        $this->_coll[5] = 'five';
-        $this->assertTrue($this->_coll->containsKey(5));
-    }
-
-    public function testContains()
-    {
-        $this->_coll[0] = 'test';
-        $this->assertTrue($this->_coll->contains('test'));
-    }
-
-    public function testSearch()
-    {
-        $this->_coll[0] = 'test';
-        $this->assertEquals(0, $this->_coll->indexOf('test'));
-    }
-
-    public function testGet()
-    {
-        $this->_coll[0] = 'test';
-        $this->assertEquals('test', $this->_coll->get(0));
-    }
-
-    public function testGetKeys()
-    {
-        $this->_coll[] = 'one';
-        $this->_coll[] = 'two';
-        $this->assertEquals(array(0, 1), $this->_coll->getKeys());
-    }
-
-    public function testGetValues()
-    {
-        $this->_coll[] = 'one';
-        $this->_coll[] = 'two';
-        $this->assertEquals(array('one', 'two'), $this->_coll->getValues());
-    }
-
-    public function testCount()
-    {
-        $this->_coll[] = 'one';
-        $this->_coll[] = 'two';
-        $this->assertEquals($this->_coll->count(), 2);
-        $this->assertEquals(count($this->_coll), 2);
-    }
-
-    public function testForAll()
-    {
-        $this->_coll[] = 'one';
-        $this->_coll[] = 'two';
-        $this->assertEquals($this->_coll->forAll(function($k, $e) { return is_string($e); }), true);
-        $this->assertEquals($this->_coll->forAll(function($k, $e) { return is_array($e); }), false);
-    }
-
-    public function testPartition()
-    {
-        $this->_coll[] = true;
-        $this->_coll[] = false;
-        $partition = $this->_coll->partition(function($k, $e) { return $e == true; });
-        $this->assertEquals($partition[0][0], true);
-        $this->assertEquals($partition[1][0], false);
-    }
-
-    public function testClear()
-    {
-        $this->_coll[] = 'one';
-        $this->_coll[] = 'two';
-        $this->_coll->clear();
-        $this->assertEquals($this->_coll->isEmpty(), true);
-    }
-
-    public function testRemove()
-    {
-        $this->_coll[] = 'one';
-        $this->_coll[] = 'two';
-        $el = $this->_coll->remove(0);
-
-        $this->assertEquals('one', $el);
-        $this->assertEquals($this->_coll->contains('one'), false);
-        $this->assertNull($this->_coll->remove(0));
-    }
-
-    public function testRemoveElement()
-    {
-        $this->_coll[] = 'one';
-        $this->_coll[] = 'two';
-
-        $this->assertTrue($this->_coll->removeElement('two'));
-        $this->assertFalse($this->_coll->contains('two'));
-        $this->assertFalse($this->_coll->removeElement('two'));
-    }
-
-    public function testSlice()
-    {
-        $this->_coll[] = 'one';
-        $this->_coll[] = 'two';
-        $this->_coll[] = 'three';
-
-        $slice = $this->_coll->slice(0, 1);
-        $this->assertInternalType('array', $slice);
-        $this->assertEquals(array('one'), $slice);
-
-        $slice = $this->_coll->slice(1);
-        $this->assertEquals(array(1 => 'two', 2 => 'three'), $slice);
-
-        $slice = $this->_coll->slice(1, 1);
-        $this->assertEquals(array(1 => 'two'), $slice);
-    }
-
-    public function fillMatchingFixture()
-    {
-        $std1 = new \stdClass();
-        $std1->foo = "bar";
-        $this->_coll[] = $std1;
-
-        $std2 = new \stdClass();
-        $std2->foo = "baz";
-        $this->_coll[] = $std2;
-    }
-
-    /**
-     * @group DDC-1637
-     */
-    public function testMatching()
-    {
-        $this->fillMatchingFixture();
-
-        $col = $this->_coll->matching(new Criteria(Criteria::expr()->eq("foo", "bar")));
-        $this->assertInstanceOf('Doctrine\Common\Collections\Collection', $col);
-        $this->assertNotSame($col, $this->_coll);
-        $this->assertEquals(1, count($col));
-    }
-
-    /**
-     * @group DDC-1637
-     */
-    public function testMatchingOrdering()
-    {
-        $this->fillMatchingFixture();
-
-        $col = $this->_coll->matching(new Criteria(null, array('foo' => 'DESC')));
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Collection', $col);
-        $this->assertNotSame($col, $this->_coll);
-        $this->assertEquals(2, count($col));
-        $this->assertEquals('baz', $col[0]->foo);
-        $this->assertEquals('bar', $col[1]->foo);
-    }
-
-    /**
-     * @group DDC-1637
-     */
-    public function testMatchingSlice()
-    {
-        $this->fillMatchingFixture();
-
-        $col = $this->_coll->matching(new Criteria(null, null, 1, 1));
-
-        $this->assertInstanceOf('Doctrine\Common\Collections\Collection', $col);
-        $this->assertNotSame($col, $this->_coll);
-        $this->assertEquals(1, count($col));
-        $this->assertEquals('baz', $col[0]->foo);
-    }
-
-    public function testCanRemoveNullValuesByKey()
-    {
-        $this->_coll->add(null);
-        $this->_coll->remove(0);
-        $this->assertTrue($this->_coll->isEmpty());
-    }
-
-    public function testCanVerifyExistingKeysWithNullValues()
-    {
-        $this->_coll->set('key', null);
-        $this->assertTrue($this->_coll->containsKey('key'));
-    }
-}
diff --git a/core/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/CriteriaTest.php b/core/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/CriteriaTest.php
deleted file mode 100644
index 03fb6ca..0000000
--- a/core/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/CriteriaTest.php
+++ /dev/null
@@ -1,82 +0,0 @@
-<?php
-namespace Doctrine\Tests\Common\Collections;
-
-use Doctrine\Common\Collections\Criteria;
-use Doctrine\Common\Collections\Expr\Comparison;
-use Doctrine\Common\Collections\Expr\CompositeExpression;
-
-class CriteriaTest extends \PHPUnit_Framework_TestCase
-{
-    public function testCreate()
-    {
-        $criteria = Criteria::create();
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Criteria", $criteria);
-    }
-
-    public function testConstructor()
-    {
-        $expr     = new Comparison("field", "=", "value");
-        $criteria = new Criteria($expr, array("foo" => "ASC"), 10, 20);
-
-        $this->assertSame($expr, $criteria->getWhereExpression());
-        $this->assertEquals(array("foo" => "ASC"), $criteria->getOrderings());
-        $this->assertEquals(10, $criteria->getFirstResult());
-        $this->assertEquals(20, $criteria->getMaxResults());
-    }
-
-    public function testWhere()
-    {
-        $expr     = new Comparison("field", "=", "value");
-        $criteria = new Criteria();
-
-        $criteria->where($expr);
-
-        $this->assertSame($expr, $criteria->getWhereExpression());
-    }
-
-    public function testAndWhere()
-    {
-        $expr     = new Comparison("field", "=", "value");
-        $criteria = new Criteria();
-
-        $criteria->where($expr);
-        $expr = $criteria->getWhereExpression();
-        $criteria->andWhere($expr);
-
-        $where = $criteria->getWhereExpression();
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\CompositeExpression', $where);
-
-        $this->assertEquals(CompositeExpression::TYPE_AND, $where->getType());
-        $this->assertSame(array($expr, $expr), $where->getExpressionList());
-    }
-
-    public function testOrWhere()
-    {
-        $expr     = new Comparison("field", "=", "value");
-        $criteria = new Criteria();
-
-        $criteria->where($expr);
-        $expr = $criteria->getWhereExpression();
-        $criteria->orWhere($expr);
-
-        $where = $criteria->getWhereExpression();
-        $this->assertInstanceOf('Doctrine\Common\Collections\Expr\CompositeExpression', $where);
-
-        $this->assertEquals(CompositeExpression::TYPE_OR, $where->getType());
-        $this->assertSame(array($expr, $expr), $where->getExpressionList());
-    }
-
-    public function testOrderings()
-    {
-        $criteria = Criteria::create()
-            ->orderBy(array("foo" => "ASC"));
-
-        $this->assertEquals(array("foo" => "ASC"), $criteria->getOrderings());
-    }
-
-    public function testExpr()
-    {
-        $this->assertInstanceOf('Doctrine\Common\Collections\ExpressionBuilder', Criteria::expr());
-    }
-}
diff --git a/core/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ExpressionBuilderTest.php b/core/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ExpressionBuilderTest.php
deleted file mode 100644
index 23dfc21..0000000
--- a/core/vendor/doctrine/collections/tests/Doctrine/Tests/Common/Collections/ExpressionBuilderTest.php
+++ /dev/null
@@ -1,122 +0,0 @@
-<?php
-namespace Doctrine\Tests\Common\Collections;
-
-use Doctrine\Common\Collections\ExpressionBuilder;
-use Doctrine\Common\Collections\Expr\Comparison;
-use Doctrine\Common\Collections\Expr\CompositeExpression;
-
-/**
- * @group DDC-1637
- */
-class ExpressionBuilderTest extends \PHPUnit_Framework_TestCase
-{
-    private $builder;
-
-    public function setUp()
-    {
-        $this->builder = new ExpressionBuilder();
-    }
-
-    public function testAndX()
-    {
-        $expr = $this->builder->andX($this->builder->eq("a", "b"));
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\CompositeExpression", $expr);
-        $this->assertEquals(CompositeExpression::TYPE_AND, $expr->getType());
-    }
-
-    public function testOrX()
-    {
-        $expr = $this->builder->orX($this->builder->eq("a", "b"));
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\CompositeExpression", $expr);
-        $this->assertEquals(CompositeExpression::TYPE_OR, $expr->getType());
-    }
-
-    public function testInvalidAndXArgument()
-    {
-        $this->setExpectedException("RuntimeException");
-        $this->builder->andX("foo");
-    }
-
-    public function testEq()
-    {
-        $expr = $this->builder->eq("a", "b");
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
-        $this->assertEquals(Comparison::EQ, $expr->getOperator());
-    }
-
-    public function testNeq()
-    {
-        $expr = $this->builder->neq("a", "b");
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
-        $this->assertEquals(Comparison::NEQ, $expr->getOperator());
-    }
-
-    public function testLt()
-    {
-        $expr = $this->builder->lt("a", "b");
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
-        $this->assertEquals(Comparison::LT, $expr->getOperator());
-    }
-
-    public function testGt()
-    {
-        $expr = $this->builder->gt("a", "b");
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
-        $this->assertEquals(Comparison::GT, $expr->getOperator());
-    }
-
-    public function testGte()
-    {
-        $expr = $this->builder->gte("a", "b");
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
-        $this->assertEquals(Comparison::GTE, $expr->getOperator());
-    }
-
-    public function testLte()
-    {
-        $expr = $this->builder->lte("a", "b");
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
-        $this->assertEquals(Comparison::LTE, $expr->getOperator());
-    }
-
-    public function testIn()
-    {
-        $expr = $this->builder->in("a", array("b"));
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
-        $this->assertEquals(Comparison::IN, $expr->getOperator());
-    }
-
-    public function testNotIn()
-    {
-        $expr = $this->builder->notIn("a", array("b"));
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
-        $this->assertEquals(Comparison::NIN, $expr->getOperator());
-    }
-
-    public function testIsNull()
-    {
-        $expr = $this->builder->isNull("a");
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
-        $this->assertEquals(Comparison::IS, $expr->getOperator());
-    }
-
-    public function testContains()
-    {
-        $expr = $this->builder->contains("a", "b");
-
-        $this->assertInstanceOf("Doctrine\Common\Collections\Expr\Comparison", $expr);
-        $this->assertEquals(Comparison::CONTAINS, $expr->getOperator());
-    }
-}
-
diff --git a/core/vendor/doctrine/collections/tests/Doctrine/Tests/DoctrineTestCase.php b/core/vendor/doctrine/collections/tests/Doctrine/Tests/DoctrineTestCase.php
deleted file mode 100644
index e8323d2..0000000
--- a/core/vendor/doctrine/collections/tests/Doctrine/Tests/DoctrineTestCase.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-namespace Doctrine\Tests;
-
-/**
- * Base testcase class for all Doctrine testcases.
- */
-abstract class DoctrineTestCase extends \PHPUnit_Framework_TestCase
-{
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/collections/tests/Doctrine/Tests/TestInit.php b/core/vendor/doctrine/collections/tests/Doctrine/Tests/TestInit.php
deleted file mode 100644
index 973b5fe..0000000
--- a/core/vendor/doctrine/collections/tests/Doctrine/Tests/TestInit.php
+++ /dev/null
@@ -1,21 +0,0 @@
-<?php
-/*
- * This file bootstraps the test environment.
- */
-namespace Doctrine\Tests;
-
-error_reporting(E_ALL | E_STRICT);
-
-// register silently failing autoloader
-spl_autoload_register(function($class) {
-    if (0 === strpos($class, 'Doctrine\Tests\\')) {
-        $path = __DIR__.'/../../'.strtr($class, '\\', '/').'.php';
-        if (is_file($path) && is_readable($path)) {
-            require_once $path;
-
-            return true;
-        }
-    }
-});
-
-require_once __DIR__ . "/../../../vendor/autoload.php";
diff --git a/core/vendor/doctrine/common/.gitignore b/core/vendor/doctrine/common/.gitignore
deleted file mode 100644
index 4815ac9..0000000
--- a/core/vendor/doctrine/common/.gitignore
+++ /dev/null
@@ -1,7 +0,0 @@
-build/
-logs/
-reports/
-dist/
-tests/Doctrine/Tests/Common/Proxy/generated/
-vendor/
-.idea
diff --git a/core/vendor/doctrine/common/.gitmodules b/core/vendor/doctrine/common/.gitmodules
deleted file mode 100644
index 51f0843..0000000
--- a/core/vendor/doctrine/common/.gitmodules
+++ /dev/null
@@ -1,3 +0,0 @@
-[submodule "lib/vendor/doctrine-build-common"]
-	path = lib/vendor/doctrine-build-common
-	url = git://github.com/doctrine/doctrine-build-common.git
diff --git a/core/vendor/doctrine/common/.travis.yml b/core/vendor/doctrine/common/.travis.yml
deleted file mode 100644
index f7fe5c3..0000000
--- a/core/vendor/doctrine/common/.travis.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-language: php
-
-env:
-  - OPCODE_CACHE=apc
-
-php:
-  - 5.3.3
-  - 5.3
-  - 5.4
-  - 5.5
-
-before_script:
-    - composer --prefer-source install
-    - php ./bin/travis-setup.php $OPCODE_CACHE
diff --git a/core/vendor/doctrine/common/LICENSE b/core/vendor/doctrine/common/LICENSE
deleted file mode 100644
index 4a91f0b..0000000
--- a/core/vendor/doctrine/common/LICENSE
+++ /dev/null
@@ -1,19 +0,0 @@
-Copyright (c) 2006-2012 Doctrine Project
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/core/vendor/doctrine/common/README.md b/core/vendor/doctrine/common/README.md
deleted file mode 100644
index c63f762..0000000
--- a/core/vendor/doctrine/common/README.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# Doctrine Common
-
-[![Build Status](https://secure.travis-ci.org/doctrine/common.png)](http://travis-ci.org/doctrine/common)
-
-The Doctrine Common project is a library that provides extensions to core PHP functionality.
-
-## More resources:
-
-* [Website](http://www.doctrine-project.org)
-* [Documentation](http://www.doctrine-project.org/projects/common/current/docs/en)
-* [Issue Tracker](http://www.doctrine-project.org/jira/browse/DCOM)
-* [Downloads](http://github.com/doctrine/common/downloads)
diff --git a/core/vendor/doctrine/common/UPGRADE_TO_2_1 b/core/vendor/doctrine/common/UPGRADE_TO_2_1
deleted file mode 100644
index 891a2e5..0000000
--- a/core/vendor/doctrine/common/UPGRADE_TO_2_1
+++ /dev/null
@@ -1,39 +0,0 @@
-This document details all the possible changes that you should investigate when updating
-your project from Doctrine Common 2.0.x to 2.1
-
-## AnnotationReader changes
-
-The annotation reader was heavily refactored between 2.0 and 2.1-RC1. In theory the operation of the new reader should be backwards compatible, but it has to be setup differently to work that way:
-
-    $reader = new \Doctrine\Common\Annotations\AnnotationReader();
-    $reader->setDefaultAnnotationNamespace('Doctrine\ORM\Mapping\\');
-    // new code necessary starting here
-    $reader->setIgnoreNotImportedAnnotations(true);
-    $reader->setEnableParsePhpImports(false);
-    $reader = new \Doctrine\Common\Annotations\CachedReader(
-        new \Doctrine\Common\Annotations\IndexedReader($reader), new ArrayCache()
-    );
-
-## Annotation Base class or @Annotation
-
-Beginning after 2.1-RC2 you have to either extend ``Doctrine\Common\Annotations\Annotation`` or add @Annotation to your annotations class-level docblock, otherwise the class will simply be ignored.
-
-## Removed methods on AnnotationReader
-
-* AnnotationReader::setAutoloadAnnotations()
-* AnnotationReader::getAutoloadAnnotations()
-* AnnotationReader::isAutoloadAnnotations()
-
-## AnnotationRegistry
-
-Autoloading through the PHP autoloader is removed from the 2.1 AnnotationReader. Instead you have to use the global AnnotationRegistry for loading purposes:
-
-    \Doctrine\Common\Annotations\AnnotationRegistry::registerFile($fileWithAnnotations);
-    \Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace($namespace, $dirs = null);
-    \Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespaces($namespaces);
-    \Doctrine\Common\Annotations\AnnotationRegistry::registerLoader($callable);
-
-The $callable for registering a loader accepts a class as first and only parameter and must try to silently autoload it. On success true has to be returned.
-The registerAutoloadNamespace function registers a PSR-0 compatible silent autoloader for all classes with the given namespace in the given directories.
-If null is passed as directory the include path will be used.
-
diff --git a/core/vendor/doctrine/common/UPGRADE_TO_2_2 b/core/vendor/doctrine/common/UPGRADE_TO_2_2
deleted file mode 100644
index 1d93a13..0000000
--- a/core/vendor/doctrine/common/UPGRADE_TO_2_2
+++ /dev/null
@@ -1,61 +0,0 @@
-This document details all the possible changes that you should investigate when 
-updating your project from Doctrine Common 2.1 to 2.2:
-
-## Annotation Changes
-
-- AnnotationReader::setIgnoreNotImportedAnnotations has been removed, you need to 
-  add ignore annotation names which are supposed to be ignored via
-  AnnotationReader::addGlobalIgnoredName
-  
-- AnnotationReader::setAutoloadAnnotations was deprecated by the AnnotationRegistry
-  in 2.1 and has been removed in 2.2
-
-- AnnotationReader::setEnableParsePhpImports was added to ease transition to the new
-  annotation mechanism in 2.1 and is removed in 2.2
-
-- AnnotationReader::isParsePhpImportsEnabled is removed (see above)
-
-- AnnotationReader::setDefaultAnnotationNamespace was deprecated in favor of explicit
-  configuration in 2.1 and will be removed in 2.2 (for isolated projects where you
-  have full-control over _all_ available annotations, we offer a dedicated reader
-  class ``SimpleAnnotationReader``)
-
-- AnnotationReader::setAnnotationCreationFunction was deprecated in 2.1 and will be
-  removed in 2.2. We only offer two creation mechanisms which cannot be changed
-  anymore to allow the same reader instance to work with all annotations regardless
-  of which library they are coming from.
-  
-- AnnotationReader::setAnnotationNamespaceAlias was deprecated in 2.1 and will be
-  removed in 2.2 (see setDefaultAnnotationNamespace)
-
-- If you use a class as annotation which has not the @Annotation marker in it's 
-  class block, we will now throw an exception instead of silently ignoring it. You
-  can however still achieve the previous behavior using the @IgnoreAnnotation, or
-  AnnotationReader::addGlobalIgnoredName (the exception message will contain detailed
-  instructions when you run into this problem).
-
-## Cache Changes
-  
-- Renamed old AbstractCache to CacheProvider
-
-- Dropped the support to the following functions of all cache providers:
-
- - CacheProvider::deleteByWildcard
-
- - CacheProvider::deleteByRegEx
-
- - CacheProvider::deleteByPrefix
-
- - CacheProvider::deleteBySuffix
-
-- CacheProvider::deleteAll will not remove ALL entries, it will only mark them as invalid
-
-- CacheProvider::flushAll will remove ALL entries, namespaced or not
-
-- Added support to MemcachedCache
-
-- Added support to WincacheCache
-
-## ClassLoader Changes
-
-- ClassLoader::fileExistsInIncludePath() no longer exists. Use the native stream_resolve_include_path() PHP function
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/bin/travis-setup.php b/core/vendor/doctrine/common/bin/travis-setup.php
deleted file mode 100644
index b51e267..0000000
--- a/core/vendor/doctrine/common/bin/travis-setup.php
+++ /dev/null
@@ -1,141 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-/**
- * Install PHP extensions required for testing by Travis CI.
- *
- * @author Victor Berchet <victor@suumit.com>
- * @since 2.2
- */
-$installer = new PhpExtensions();
-
-if (isset($argv[1]) && 'APC' === strtoupper($argv[1])) {
-    $installer->install('apc');
-} else {
-    $installer->install('xcache');
-}
-
-$installer->install('memcache');
-$installer->install('memcached');
-
-class PhpExtensions
-{
-    protected $extensions;
-    protected $phpVersion;
-    protected $iniPath;
-
-    public function __construct()
-    {
-        $this->phpVersion = phpversion();
-        $this->iniPath = php_ini_loaded_file();
-        $this->extensions = array(
-        'memcache' => array(
-            'url'        => 'http://pecl.php.net/get/memcache-2.2.6.tgz',
-            'php_version' => array(),
-            'cfg'         => array('--enable-memcache'),
-            'ini'         => array('extension=memcache.so'),
-        ),
-        'memcached' => array(
-            'url'        => 'http://pecl.php.net/get/memcached-1.0.2.tgz',
-            'php_version' => array(
-                // memcached 1.0.2 does not build on PHP 5.4
-                array('<', '5.4'),
-            ),
-            'cfg'         => array(),
-            'ini'         => array('extension=memcached.so'),
-        ),
-        'apc' => array(
-            'url'        => 'http://pecl.php.net/get/APC-3.1.9.tgz',
-            'php_version' => array(
-                // apc 3.1.9 causes a segfault on PHP 5.4
-                array('<', '5.4'),
-            ),
-            'cfg'         => array(),
-            'ini'         => array(
-                'extension=apc.so',
-                'apc.enabled=1',
-                'apc.enable_cli=1'
-            ),
-        ),
-        'xcache' => array(
-            'url'        => 'http://xcache.lighttpd.net/pub/Releases/1.2.2/xcache-1.2.2.tar.gz',
-            'php_version' => array(
-                // xcache does not build with Travis CI (as of 2012-01-09)
-                array('<', '5'),
-            ),
-            'cfg'         => array('--enable-xcache'),
-            'ini'         => array(
-                'extension=xcache.so',
-                'xcache.cacher=false',
-                'xcache.admin.enable_auth=0',
-                'xcache.var_size=1M',
-            ),
-        ),
-    );
-    }
-
-    public function install($name)
-    {
-        if (array_key_exists($name, $this->extensions)) {
-            $extension = $this->extensions[$name];
-
-
-            echo "== extension: $name ==\n";
-
-            foreach ($extension['php_version'] as $version) {
-                if (!version_compare($this->phpVersion, $version[1], $version[0])) {
-                    printf(
-                        "=> not installed, requires a PHP version %s %s (%s installed)\n",
-                        $version[0],
-                        $version[1],
-                        $this->phpVersion
-                    );
-
-                    return;
-                }
-            }
-
-            $this->system(sprintf("wget %s > /dev/null 2>&1", $extension['url']));
-            $file = basename($extension['url']);
-            $this->system(sprintf("tar -xzf %s > /dev/null 2>&1", $file));
-            $folder = basename($file, ".tgz");
-            $folder = basename($folder, ".tar.gz");
-            $this->system(sprintf(
-                'sh -c "cd %s && phpize && ./configure %s && make && sudo make install" > /dev/null 2>&1',
-                $folder,
-                implode(' ', $extension['cfg'])
-            ));
-            foreach ($extension['ini'] as $ini) {
-                $this->system(sprintf("echo %s >> %s", $ini, $this->iniPath));
-            }
-            printf("=> installed (%s)\n", $folder);
-        }
-    }
-
-    private function system($cmd)
-    {
-        $ret = 0;
-        system($cmd, $ret);
-        if (0 !== $ret) {
-            printf("=> Command '%s' failed !", $cmd);
-            
-            exit($ret);
-        }
-    }
-}
diff --git a/core/vendor/doctrine/common/build.properties b/core/vendor/doctrine/common/build.properties
deleted file mode 100644
index ff311a4..0000000
--- a/core/vendor/doctrine/common/build.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-# Project Name
-project.name=DoctrineCommon
-
-# Version class and file
-project.version_class = Doctrine\Common\Version
-project.version_file = lib/Doctrine/Common/Version.php
diff --git a/core/vendor/doctrine/common/build.xml b/core/vendor/doctrine/common/build.xml
deleted file mode 100644
index 9d9100d..0000000
--- a/core/vendor/doctrine/common/build.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0"?>
-<project name="Doctrine2" default="build" basedir=".">
-    <taskdef classname="phing.tasks.ext.d51PearPkg2Task" name="d51pearpkg2" />
-    <import file="${project.basedir}/lib/vendor/doctrine-build-common/packaging.xml" />
-
-    <property file="build.properties" />
-    
-    <!-- 
-        Fileset for artifacts shared across all distributed packages.
-    -->
-    <fileset id="shared-artifacts" dir=".">
-        <include name="LICENSE"/>
-        <include name="COPYRIGHT"/>
-        <include name="CHANGELOG"/>
-    </fileset>
-
-    <!-- 
-        Fileset for the sources of the Doctrine Common package.
-    -->
-    <fileset id="common-sources" dir="./lib">
-        <include name="Doctrine/Common/**"/>
-    </fileset>
-
-    <!--
-        Builds Common package, preparing it for distribution.
-    -->
-    <target name="copy-files" depends="prepare">
-        <copy todir="${build.dir}/${project.name}-${version}">
-            <fileset refid="shared-artifacts"/>
-        </copy>
-        <copy todir="${build.dir}/${project.name}-${version}">
-            <fileset refid="common-sources"/>
-        </copy>
-    </target>
-
-    <!-- 
-        Builds distributable PEAR packages.
-    -->
-    <target name="define-pear-package" depends="copy-files">
-        <d51pearpkg2 baseinstalldir="/" dir="${build.dir}/${project.name}-${version}">
-           <name>DoctrineCommon</name>
-           <summary>Doctrine Common PHP Extensions</summary>
-           <channel>pear.doctrine-project.org</channel>
-           <description>The Doctrine Common package contains shared code between the other packages.</description>
-           <lead user="jwage" name="Jonathan H. Wage" email="jonwage@gmail.com" />
-           <lead user="guilhermeblanco" name="Guilherme Blanco" email="guilhermeblanco@gmail.com" />
-           <lead user="romanb" name="Roman Borschel" email="roman@code-factory.org" />
-           <lead user="beberlei" name="Benjamin Eberlei" email="kontakt@beberlei.de" />
-           <license>MIT</license>
-           <version release="${pear.version}" api="${pear.version}" />
-           <stability release="${pear.stability}" api="${pear.stability}" />
-           <notes>-</notes>
-           <dependencies>
-               <php minimum_version="5.3.0" />
-               <pear minimum_version="1.6.0" recommended_version="1.6.1" />
-           </dependencies>
-        </d51pearpkg2>
-    </target>
-</project>
diff --git a/core/vendor/doctrine/common/composer.json b/core/vendor/doctrine/common/composer.json
deleted file mode 100644
index 24f9a2c..0000000
--- a/core/vendor/doctrine/common/composer.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
-    "name": "doctrine/common",
-    "type": "library",
-    "description": "Common Library for Doctrine projects",
-    "keywords": ["collections", "spl", "eventmanager", "annotations", "persistence"],
-    "homepage": "http://www.doctrine-project.org",
-    "license": "MIT",
-    "authors": [
-        {"name": "Guilherme Blanco", "email": "guilhermeblanco@gmail.com"},
-        {"name": "Roman Borschel", "email": "roman@code-factory.org"},
-        {"name": "Benjamin Eberlei", "email": "kontakt@beberlei.de"},
-        {"name": "Jonathan Wage", "email": "jonwage@gmail.com"},
-        {"name": "Johannes Schmitt", "email": "schmittjoh@gmail.com"}
-    ],
-    "require": {
-        "php": ">=5.3.2",
-        "doctrine/inflector": "1.*",
-        "doctrine/cache": "1.*",
-        "doctrine/collections": "1.*",
-        "doctrine/lexer": "1.*",
-        "doctrine/annotations": "1.*"
-    },
-    "autoload": {
-        "psr-0": { "Doctrine\\Common\\": "lib/" }
-    },
-    "extra": {
-        "branch-alias": {
-            "dev-master": "2.4.x-dev"
-        }
-    }
-}
diff --git a/core/vendor/doctrine/common/composer.lock b/core/vendor/doctrine/common/composer.lock
deleted file mode 100644
index 1ed8a6b..0000000
--- a/core/vendor/doctrine/common/composer.lock
+++ /dev/null
@@ -1,322 +0,0 @@
-{
-    "hash": "f763db6a8f5bcaff6e51ae516283a4c9",
-    "packages": [
-        {
-            "name": "doctrine/annotations",
-            "version": "v1.0",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/doctrine/annotations.git",
-                "reference": "v1.0"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://github.com/doctrine/annotations/archive/v1.0.zip",
-                "reference": "v1.0",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.2",
-                "doctrine/lexer": "1.*"
-            },
-            "require-dev": {
-                "doctrine/cache": "1.*"
-            },
-            "time": "2013-01-12 19:23:32",
-            "type": "library",
-            "installation-source": "dist",
-            "autoload": {
-                "psr-0": {
-                    "Doctrine\\Common\\Annotations\\": "lib/"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Jonathan Wage",
-                    "email": "jonwage@gmail.com",
-                    "homepage": "http://www.jwage.com/"
-                },
-                {
-                    "name": "Guilherme Blanco",
-                    "email": "guilhermeblanco@gmail.com",
-                    "homepage": "http://www.instaclick.com"
-                },
-                {
-                    "name": "Roman Borschel",
-                    "email": "roman@code-factory.org"
-                },
-                {
-                    "name": "Benjamin Eberlei",
-                    "email": "kontakt@beberlei.de"
-                },
-                {
-                    "name": "Johannes Schmitt",
-                    "email": "schmittjoh@gmail.com",
-                    "homepage": "https://github.com/schmittjoh",
-                    "role": "Developer of wrapped JMSSerializerBundle"
-                }
-            ],
-            "description": "Docblock Annotations Parser",
-            "homepage": "http://www.doctrine-project.org",
-            "keywords": [
-                "annotations",
-                "parser",
-                "docblock"
-            ]
-        },
-        {
-            "name": "doctrine/cache",
-            "version": "v1.0",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/doctrine/cache.git",
-                "reference": "v1.0"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://github.com/doctrine/cache/archive/v1.0.zip",
-                "reference": "v1.0",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.2"
-            },
-            "time": "2013-01-10 22:43:46",
-            "type": "library",
-            "installation-source": "dist",
-            "autoload": {
-                "psr-0": {
-                    "Doctrine\\Common\\Cache\\": "lib/"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Jonathan Wage",
-                    "email": "jonwage@gmail.com",
-                    "homepage": "http://www.jwage.com/"
-                },
-                {
-                    "name": "Guilherme Blanco",
-                    "email": "guilhermeblanco@gmail.com",
-                    "homepage": "http://www.instaclick.com"
-                },
-                {
-                    "name": "Roman Borschel",
-                    "email": "roman@code-factory.org"
-                },
-                {
-                    "name": "Benjamin Eberlei",
-                    "email": "kontakt@beberlei.de"
-                },
-                {
-                    "name": "Johannes Schmitt",
-                    "email": "schmittjoh@gmail.com",
-                    "homepage": "https://github.com/schmittjoh",
-                    "role": "Developer of wrapped JMSSerializerBundle"
-                }
-            ],
-            "description": "Caching library offering an object-oriented API for many cache backends",
-            "homepage": "http://www.doctrine-project.org",
-            "keywords": [
-                "cache",
-                "caching"
-            ]
-        },
-        {
-            "name": "doctrine/collections",
-            "version": "v1.0",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/doctrine/collections.git",
-                "reference": "v1.0"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://github.com/doctrine/collections/archive/v1.0.zip",
-                "reference": "v1.0",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.2"
-            },
-            "time": "2013-01-12 16:36:50",
-            "type": "library",
-            "installation-source": "dist",
-            "autoload": {
-                "psr-0": {
-                    "Doctrine\\Common\\Collections\\": "lib/"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Jonathan Wage",
-                    "email": "jonwage@gmail.com",
-                    "homepage": "http://www.jwage.com/"
-                },
-                {
-                    "name": "Guilherme Blanco",
-                    "email": "guilhermeblanco@gmail.com",
-                    "homepage": "http://www.instaclick.com"
-                },
-                {
-                    "name": "Roman Borschel",
-                    "email": "roman@code-factory.org"
-                },
-                {
-                    "name": "Benjamin Eberlei",
-                    "email": "kontakt@beberlei.de"
-                },
-                {
-                    "name": "Johannes Schmitt",
-                    "email": "schmittjoh@gmail.com",
-                    "homepage": "https://github.com/schmittjoh",
-                    "role": "Developer of wrapped JMSSerializerBundle"
-                }
-            ],
-            "description": "Collections Abstraction library",
-            "homepage": "http://www.doctrine-project.org",
-            "keywords": [
-                "collections",
-                "iterator",
-                "array"
-            ]
-        },
-        {
-            "name": "doctrine/inflector",
-            "version": "v1.0",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/doctrine/inflector.git",
-                "reference": "v1.0"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://github.com/doctrine/inflector/archive/v1.0.zip",
-                "reference": "v1.0",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.2"
-            },
-            "time": "2013-01-10 21:49:15",
-            "type": "library",
-            "installation-source": "dist",
-            "autoload": {
-                "psr-0": {
-                    "Doctrine\\Common\\Inflector\\": "lib/"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Jonathan Wage",
-                    "email": "jonwage@gmail.com",
-                    "homepage": "http://www.jwage.com/"
-                },
-                {
-                    "name": "Guilherme Blanco",
-                    "email": "guilhermeblanco@gmail.com",
-                    "homepage": "http://www.instaclick.com"
-                },
-                {
-                    "name": "Roman Borschel",
-                    "email": "roman@code-factory.org"
-                },
-                {
-                    "name": "Benjamin Eberlei",
-                    "email": "kontakt@beberlei.de"
-                },
-                {
-                    "name": "Johannes Schmitt",
-                    "email": "schmittjoh@gmail.com",
-                    "homepage": "https://github.com/schmittjoh",
-                    "role": "Developer of wrapped JMSSerializerBundle"
-                }
-            ],
-            "description": "Common String Manipulations with regard to casing and singular/plural rules.",
-            "homepage": "http://www.doctrine-project.org",
-            "keywords": [
-                "string",
-                "inflection",
-                "singuarlize",
-                "pluarlize"
-            ]
-        },
-        {
-            "name": "doctrine/lexer",
-            "version": "v1.0",
-            "source": {
-                "type": "git",
-                "url": "https://github.com/doctrine/lexer.git",
-                "reference": "v1.0"
-            },
-            "dist": {
-                "type": "zip",
-                "url": "https://github.com/doctrine/lexer/archive/v1.0.zip",
-                "reference": "v1.0",
-                "shasum": ""
-            },
-            "require": {
-                "php": ">=5.3.2"
-            },
-            "time": "2013-01-12 18:59:04",
-            "type": "library",
-            "installation-source": "dist",
-            "autoload": {
-                "psr-0": {
-                    "Doctrine\\Common\\Lexer\\": "lib/"
-                }
-            },
-            "notification-url": "https://packagist.org/downloads/",
-            "license": [
-                "MIT"
-            ],
-            "authors": [
-                {
-                    "name": "Guilherme Blanco",
-                    "email": "guilhermeblanco@gmail.com",
-                    "homepage": "http://www.instaclick.com"
-                },
-                {
-                    "name": "Roman Borschel",
-                    "email": "roman@code-factory.org"
-                },
-                {
-                    "name": "Johannes Schmitt",
-                    "email": "schmittjoh@gmail.com",
-                    "homepage": "https://github.com/schmittjoh",
-                    "role": "Developer of wrapped JMSSerializerBundle"
-                }
-            ],
-            "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.",
-            "homepage": "http://www.doctrine-project.org",
-            "keywords": [
-                "parser",
-                "lexer"
-            ]
-        }
-    ],
-    "packages-dev": null,
-    "aliases": [
-
-    ],
-    "minimum-stability": "stable",
-    "stability-flags": [
-
-    ]
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/ClassLoader.php b/core/vendor/doctrine/common/lib/Doctrine/Common/ClassLoader.php
deleted file mode 100644
index 632805e..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/ClassLoader.php
+++ /dev/null
@@ -1,288 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common;
-
-/**
- * A <tt>ClassLoader</tt> is an autoloader for class files that can be
- * installed on the SPL autoload stack. It is a class loader that either loads only classes
- * of a specific namespace or all namespaces and it is suitable for working together
- * with other autoloaders in the SPL autoload stack.
- *
- * If no include path is configured through the constructor or {@link setIncludePath}, a ClassLoader
- * relies on the PHP <code>include_path</code>.
- *
- * @author Roman Borschel <roman@code-factory.org>
- * @since 2.0
- */
-class ClassLoader
-{
-    /**
-     * PHP file extension.
-     *
-     * @var string
-     */
-    protected $fileExtension = '.php';
-
-    /**
-     * Current namespace.
-     *
-     * @var string|null
-     */
-    protected $namespace;
-
-    /**
-     * Current include path.
-     *
-     * @var string|null
-     */
-    protected $includePath;
-
-    /**
-     * PHP namespace separator.
-     *
-     * @var string
-     */
-    protected $namespaceSeparator = '\\';
-
-    /**
-     * Creates a new <tt>ClassLoader</tt> that loads classes of the
-     * specified namespace from the specified include path.
-     *
-     * If no include path is given, the ClassLoader relies on the PHP include_path.
-     * If neither a namespace nor an include path is given, the ClassLoader will
-     * be responsible for loading all classes, thereby relying on the PHP include_path.
-     *
-     * @param string|null $ns          The namespace of the classes to load.
-     * @param string|null $includePath The base include path to use.
-     */
-    public function __construct($ns = null, $includePath = null)
-    {
-        $this->namespace = $ns;
-        $this->includePath = $includePath;
-    }
-
-    /**
-     * Sets the namespace separator used by classes in the namespace of this ClassLoader.
-     *
-     * @param string $sep The separator to use.
-     *
-     * @return void
-     */
-    public function setNamespaceSeparator($sep)
-    {
-        $this->namespaceSeparator = $sep;
-    }
-
-    /**
-     * Gets the namespace separator used by classes in the namespace of this ClassLoader.
-     *
-     * @return string
-     */
-    public function getNamespaceSeparator()
-    {
-        return $this->namespaceSeparator;
-    }
-
-    /**
-     * Sets the base include path for all class files in the namespace of this ClassLoader.
-     *
-     * @param string|null $includePath
-     *
-     * @return void
-     */
-    public function setIncludePath($includePath)
-    {
-        $this->includePath = $includePath;
-    }
-
-    /**
-     * Gets the base include path for all class files in the namespace of this ClassLoader.
-     *
-     * @return string|null
-     */
-    public function getIncludePath()
-    {
-        return $this->includePath;
-    }
-
-    /**
-     * Sets the file extension of class files in the namespace of this ClassLoader.
-     *
-     * @param string $fileExtension
-     *
-     * @return void
-     */
-    public function setFileExtension($fileExtension)
-    {
-        $this->fileExtension = $fileExtension;
-    }
-
-    /**
-     * Gets the file extension of class files in the namespace of this ClassLoader.
-     *
-     * @return string
-     */
-    public function getFileExtension()
-    {
-        return $this->fileExtension;
-    }
-
-    /**
-     * Registers this ClassLoader on the SPL autoload stack.
-     *
-     * @return void
-     */
-    public function register()
-    {
-        spl_autoload_register(array($this, 'loadClass'));
-    }
-
-    /**
-     * Removes this ClassLoader from the SPL autoload stack.
-     *
-     * @return void
-     */
-    public function unregister()
-    {
-        spl_autoload_unregister(array($this, 'loadClass'));
-    }
-
-    /**
-     * Loads the given class or interface.
-     *
-     * @param string $className The name of the class to load.
-     *
-     * @return boolean TRUE if the class has been successfully loaded, FALSE otherwise.
-     */
-    public function loadClass($className)
-    {
-        if ($this->namespace !== null && strpos($className, $this->namespace.$this->namespaceSeparator) !== 0) {
-            return false;
-        }
-
-        require ($this->includePath !== null ? $this->includePath . DIRECTORY_SEPARATOR : '')
-               . str_replace($this->namespaceSeparator, DIRECTORY_SEPARATOR, $className)
-               . $this->fileExtension;
-
-        return true;
-    }
-
-    /**
-     * Asks this ClassLoader whether it can potentially load the class (file) with
-     * the given name.
-     *
-     * @param string $className The fully-qualified name of the class.
-     *
-     * @return boolean TRUE if this ClassLoader can load the class, FALSE otherwise.
-     */
-    public function canLoadClass($className)
-    {
-        if ($this->namespace !== null && strpos($className, $this->namespace.$this->namespaceSeparator) !== 0) {
-            return false;
-        }
-
-        $file = str_replace($this->namespaceSeparator, DIRECTORY_SEPARATOR, $className) . $this->fileExtension;
-
-        if ($this->includePath !== null) {
-            return is_file($this->includePath . DIRECTORY_SEPARATOR . $file);
-        }
-
-        return (false !== stream_resolve_include_path($file));
-    }
-
-    /**
-     * Checks whether a class with a given name exists. A class "exists" if it is either
-     * already defined in the current request or if there is an autoloader on the SPL
-     * autoload stack that is a) responsible for the class in question and b) is able to
-     * load a class file in which the class definition resides.
-     *
-     * If the class is not already defined, each autoloader in the SPL autoload stack
-     * is asked whether it is able to tell if the class exists. If the autoloader is
-     * a <tt>ClassLoader</tt>, {@link canLoadClass} is used, otherwise the autoload
-     * function of the autoloader is invoked and expected to return a value that
-     * evaluates to TRUE if the class (file) exists. As soon as one autoloader reports
-     * that the class exists, TRUE is returned.
-     *
-     * Note that, depending on what kinds of autoloaders are installed on the SPL
-     * autoload stack, the class (file) might already be loaded as a result of checking
-     * for its existence. This is not the case with a <tt>ClassLoader</tt>, who separates
-     * these responsibilities.
-     *
-     * @param string $className The fully-qualified name of the class.
-     *
-     * @return boolean TRUE if the class exists as per the definition given above, FALSE otherwise.
-     */
-    public static function classExists($className)
-    {
-        if (class_exists($className, false) || interface_exists($className, false)) {
-            return true;
-        }
-
-        foreach (spl_autoload_functions() as $loader) {
-            if (is_array($loader)) { // array(???, ???)
-                if (is_object($loader[0])) {
-                    if ($loader[0] instanceof ClassLoader) { // array($obj, 'methodName')
-                        if ($loader[0]->canLoadClass($className)) {
-                            return true;
-                        }
-                    } else if ($loader[0]->{$loader[1]}($className)) {
-                        return true;
-                    }
-                } else if ($loader[0]::$loader[1]($className)) { // array('ClassName', 'methodName')
-                    return true;
-                }
-            } else if ($loader instanceof \Closure) { // function($className) {..}
-                if ($loader($className)) {
-                    return true;
-                }
-            } else if (is_string($loader) && $loader($className)) { // "MyClass::loadClass"
-                return true;
-            }
-
-            if (class_exists($className, false) || interface_exists($className, false)) {
-                return true;
-            }
-        }
-
-        return false;
-    }
-
-    /**
-     * Gets the <tt>ClassLoader</tt> from the SPL autoload stack that is responsible
-     * for (and is able to load) the class with the given name.
-     *
-     * @param string $className The name of the class.
-     *
-     * @return ClassLoader The <tt>ClassLoader</tt> for the class or NULL if no such <tt>ClassLoader</tt> exists.
-     */
-    public static function getClassLoader($className)
-    {
-         foreach (spl_autoload_functions() as $loader) {
-            if (is_array($loader)
-                && $loader[0] instanceof ClassLoader
-                && $loader[0]->canLoadClass($className)
-            ) {
-                return $loader[0];
-            }
-        }
-
-        return null;
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/CommonException.php b/core/vendor/doctrine/common/lib/Doctrine/Common/CommonException.php
deleted file mode 100644
index 2a1a08e..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/CommonException.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common;
-
-/**
- * Base exception class for package Doctrine\Common.
- *
- * @author heinrich
- */
-class CommonException extends \Exception
-{
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Comparable.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Comparable.php
deleted file mode 100644
index 8cd02c9..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Comparable.php
+++ /dev/null
@@ -1,46 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common;
-
-/**
- * Comparable interface that allows to compare two value objects to each other for similarity.
- *
- * @link   www.doctrine-project.org
- * @since  2.2
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- */
-interface Comparable
-{
-    /**
-     * Compares the current object to the passed $other.
-     *
-     * Returns 0 if they are semantically equal, 1 if the other object
-     * is less than the current one, or -1 if its more than the current one.
-     *
-     * This method should not check for identity using ===, only for semantical equality for example
-     * when two different DateTime instances point to the exact same Date + TZ.
-     *
-     * @param mixed $other
-     *
-     * @return int
-     */
-    public function compareTo($other);
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/EventArgs.php b/core/vendor/doctrine/common/lib/Doctrine/Common/EventArgs.php
deleted file mode 100644
index 75506e6..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/EventArgs.php
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common;
-
-/**
- * EventArgs is the base class for classes containing event data.
- *
- * This class contains no event data. It is used by events that do not pass state
- * information to an event handler when an event is raised. The single empty EventArgs
- * instance can be obtained through {@link getEmptyInstance}.
- *
- * @link   www.doctrine-project.org
- * @since  2.0
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-class EventArgs
-{
-    /**
-     * Single instance of EventArgs.
-     *
-     * @var EventArgs
-     */
-    private static $_emptyEventArgsInstance;
-
-    /**
-     * Gets the single, empty and immutable EventArgs instance.
-     *
-     * This instance will be used when events are dispatched without any parameter,
-     * like this: EventManager::dispatchEvent('eventname');
-     *
-     * The benefit from this is that only one empty instance is instantiated and shared
-     * (otherwise there would be instances for every dispatched in the abovementioned form).
-     *
-     * @see EventManager::dispatchEvent
-     *
-     * @link http://msdn.microsoft.com/en-us/library/system.eventargs.aspx
-     *
-     * @return EventArgs
-     */
-    public static function getEmptyInstance()
-    {
-        if ( ! self::$_emptyEventArgsInstance) {
-            self::$_emptyEventArgsInstance = new EventArgs;
-        }
-
-        return self::$_emptyEventArgsInstance;
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/EventManager.php b/core/vendor/doctrine/common/lib/Doctrine/Common/EventManager.php
deleted file mode 100644
index fbbd2a8..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/EventManager.php
+++ /dev/null
@@ -1,154 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common;
-
-/**
- * The EventManager is the central point of Doctrine's event listener system.
- * Listeners are registered on the manager and events are dispatched through the
- * manager.
- *
- * @link   www.doctrine-project.org
- * @since  2.0
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-class EventManager
-{
-    /**
-     * Map of registered listeners.
-     * <event> => <listeners>
-     *
-     * @var array
-     */
-    private $_listeners = array();
-
-    /**
-     * Dispatches an event to all registered listeners.
-     *
-     * @param string    $eventName      The name of the event to dispatch. The name of the event is
-     *                                  the name of the method that is invoked on listeners.
-     * @param EventArgs|null $eventArgs The event arguments to pass to the event handlers/listeners.
-     *                                  If not supplied, the single empty EventArgs instance is used.
-     *
-     * @return boolean
-     */
-    public function dispatchEvent($eventName, EventArgs $eventArgs = null)
-    {
-        if (isset($this->_listeners[$eventName])) {
-            $eventArgs = $eventArgs === null ? EventArgs::getEmptyInstance() : $eventArgs;
-
-            foreach ($this->_listeners[$eventName] as $listener) {
-                $listener->$eventName($eventArgs);
-            }
-        }
-    }
-
-    /**
-     * Gets the listeners of a specific event or all listeners.
-     *
-     * @param string|null $event The name of the event.
-     *
-     * @return array The event listeners for the specified event, or all event listeners.
-     */
-    public function getListeners($event = null)
-    {
-        return $event ? $this->_listeners[$event] : $this->_listeners;
-    }
-
-    /**
-     * Checks whether an event has any registered listeners.
-     *
-     * @param string $event
-     *
-     * @return boolean TRUE if the specified event has any listeners, FALSE otherwise.
-     */
-    public function hasListeners($event)
-    {
-        return isset($this->_listeners[$event]) && $this->_listeners[$event];
-    }
-
-    /**
-     * Adds an event listener that listens on the specified events.
-     *
-     * @param string|array $events   The event(s) to listen on.
-     * @param object       $listener The listener object.
-     *
-     * @return void
-     */
-    public function addEventListener($events, $listener)
-    {
-        // Picks the hash code related to that listener
-        $hash = spl_object_hash($listener);
-
-        foreach ((array) $events as $event) {
-            // Overrides listener if a previous one was associated already
-            // Prevents duplicate listeners on same event (same instance only)
-            $this->_listeners[$event][$hash] = $listener;
-        }
-    }
-
-    /**
-     * Removes an event listener from the specified events.
-     *
-     * @param string|array $events
-     * @param object       $listener
-     *
-     * @return void
-     */
-    public function removeEventListener($events, $listener)
-    {
-        // Picks the hash code related to that listener
-        $hash = spl_object_hash($listener);
-
-        foreach ((array) $events as $event) {
-            // Check if actually have this listener associated
-            if (isset($this->_listeners[$event][$hash])) {
-                unset($this->_listeners[$event][$hash]);
-            }
-        }
-    }
-
-    /**
-     * Adds an EventSubscriber. The subscriber is asked for all the events he is
-     * interested in and added as a listener for these events.
-     *
-     * @param \Doctrine\Common\EventSubscriber $subscriber The subscriber.
-     *
-     * @return void
-     */
-    public function addEventSubscriber(EventSubscriber $subscriber)
-    {
-        $this->addEventListener($subscriber->getSubscribedEvents(), $subscriber);
-    }
-
-    /**
-     * Removes an EventSubscriber. The subscriber is asked for all the events it is
-     * interested in and removed as a listener for these events.
-     *
-     * @param \Doctrine\Common\EventSubscriber $subscriber The subscriber.
-     *
-     * @return void
-     */
-    public function removeEventSubscriber(EventSubscriber $subscriber)
-    {
-        $this->removeEventListener($subscriber->getSubscribedEvents(), $subscriber);
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/EventSubscriber.php b/core/vendor/doctrine/common/lib/Doctrine/Common/EventSubscriber.php
deleted file mode 100644
index 55d0f7d..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/EventSubscriber.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common;
-
-/**
- * An EventSubscriber knows himself what events he is interested in.
- * If an EventSubscriber is added to an EventManager, the manager invokes
- * {@link getSubscribedEvents} and registers the subscriber as a listener for all
- * returned events.
- *
- * @link   www.doctrine-project.org
- * @since  2.0
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-interface EventSubscriber
-{
-    /**
-     * Returns an array of events this subscriber wants to listen to.
-     *
-     * @return array
-     */
-    public function getSubscribedEvents();
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Lexer.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Lexer.php
deleted file mode 100644
index 0aa07f8..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Lexer.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common;
-
-use Doctrine\Common\Lexer\AbstractLexer;
-
-/**
- * Base class for writing simple lexers, i.e. for creating small DSLs.
- *
- * Lexer moved into its own Component Doctrine\Common\Lexer. This class
- * only stays for being BC.
- *
- * @since  2.0
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-abstract class Lexer extends AbstractLexer
-{
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/NotifyPropertyChanged.php b/core/vendor/doctrine/common/lib/Doctrine/Common/NotifyPropertyChanged.php
deleted file mode 100644
index e25e999..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/NotifyPropertyChanged.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common;
-
-/**
- * Contract for classes that provide the service of notifying listeners of
- * changes to their properties.
- *
- * @link   www.doctrine-project.org
- * @since  2.0
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-interface NotifyPropertyChanged
-{
-    /**
-     * Adds a listener that wants to be notified about property changes.
-     *
-     * @param PropertyChangedListener $listener
-     *
-     * @return void
-     */
-    public function addPropertyChangedListener(PropertyChangedListener $listener);
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/AbstractManagerRegistry.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/AbstractManagerRegistry.php
deleted file mode 100644
index 15b5aa3..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/AbstractManagerRegistry.php
+++ /dev/null
@@ -1,259 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence;
-
-use Doctrine\Common\Persistence\ManagerRegistry;
-
-/**
- * Abstract implementation of the ManagerRegistry contract.
- *
- * @link   www.doctrine-project.org
- * @since  2.2
- * @author Fabien Potencier <fabien@symfony.com>
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Lukas Kahwe Smith <smith@pooteeweet.org>
- */
-abstract class AbstractManagerRegistry implements ManagerRegistry
-{
-    /**
-     * @var string
-     */
-    private $name;
-
-    /**
-     * @var array
-     */
-    private $connections;
-
-    /**
-     * @var array
-     */
-    private $managers;
-
-    /**
-     * @var string
-     */
-    private $defaultConnection;
-
-    /**
-     * @var string
-     */
-    private $defaultManager;
-
-    /**
-     * @var string
-     */
-    private $proxyInterfaceName;
-
-    /**
-     * Constructor.
-     *
-     * @param string $name
-     * @param array  $connections
-     * @param array  $managers
-     * @param string $defaultConnection
-     * @param string $defaultManager
-     * @param string $proxyInterfaceName
-     */
-    public function __construct($name, array $connections, array $managers, $defaultConnection, $defaultManager, $proxyInterfaceName)
-    {
-        $this->name = $name;
-        $this->connections = $connections;
-        $this->managers = $managers;
-        $this->defaultConnection = $defaultConnection;
-        $this->defaultManager = $defaultManager;
-        $this->proxyInterfaceName = $proxyInterfaceName;
-    }
-
-    /**
-     * Fetches/creates the given services.
-     *
-     * A service in this context is connection or a manager instance.
-     *
-     * @param string $name The name of the service.
-     *
-     * @return object The instance of the given service.
-     */
-    abstract protected function getService($name);
-
-    /**
-     * Resets the given services.
-     *
-     * A service in this context is connection or a manager instance.
-     *
-     * @param string $name The name of the service.
-     *
-     * @return void
-     */
-    abstract protected function resetService($name);
-
-    /**
-     * Gets the name of the registry.
-     *
-     * @return string
-     */
-    public function getName()
-    {
-        return $this->name;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getConnection($name = null)
-    {
-        if (null === $name) {
-            $name = $this->defaultConnection;
-        }
-
-        if (!isset($this->connections[$name])) {
-            throw new \InvalidArgumentException(sprintf('Doctrine %s Connection named "%s" does not exist.', $this->name, $name));
-        }
-
-        return $this->getService($this->connections[$name]);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getConnectionNames()
-    {
-        return $this->connections;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getConnections()
-    {
-        $connections = array();
-        foreach ($this->connections as $name => $id) {
-            $connections[$name] = $this->getService($id);
-        }
-
-        return $connections;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getDefaultConnectionName()
-    {
-        return $this->defaultConnection;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getDefaultManagerName()
-    {
-        return $this->defaultManager;
-    }
-
-    /**
-     * {@inheritdoc}
-     *
-     * @throws \InvalidArgumentException
-     */
-    public function getManager($name = null)
-    {
-        if (null === $name) {
-            $name = $this->defaultManager;
-        }
-
-        if (!isset($this->managers[$name])) {
-            throw new \InvalidArgumentException(sprintf('Doctrine %s Manager named "%s" does not exist.', $this->name, $name));
-        }
-
-        return $this->getService($this->managers[$name]);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getManagerForClass($class)
-    {
-        // Check for namespace alias
-        if (strpos($class, ':') !== false) {
-            list($namespaceAlias, $simpleClassName) = explode(':', $class);
-            $class = $this->getAliasNamespace($namespaceAlias) . '\\' . $simpleClassName;
-        }
-
-        $proxyClass = new \ReflectionClass($class);
-        if ($proxyClass->implementsInterface($this->proxyInterfaceName)) {
-            $class = $proxyClass->getParentClass()->getName();
-        }
-
-        foreach ($this->managers as $id) {
-            $manager = $this->getService($id);
-
-            if (!$manager->getMetadataFactory()->isTransient($class)) {
-                return $manager;
-            }
-        }
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getManagerNames()
-    {
-        return $this->managers;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getManagers()
-    {
-        $dms = array();
-        foreach ($this->managers as $name => $id) {
-            $dms[$name] = $this->getService($id);
-        }
-
-        return $dms;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getRepository($persistentObjectName, $persistentManagerName = null)
-    {
-        return $this->getManager($persistentManagerName)->getRepository($persistentObjectName);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function resetManager($name = null)
-    {
-        if (null === $name) {
-            $name = $this->defaultManager;
-        }
-
-        if (!isset($this->managers[$name])) {
-            throw new \InvalidArgumentException(sprintf('Doctrine %s Manager named "%s" does not exist.', $this->name, $name));
-        }
-
-        // force the creation of a new document manager
-        // if the current one is closed
-        $this->resetService($this->managers[$name]);
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ConnectionRegistry.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ConnectionRegistry.php
deleted file mode 100644
index 7c25e98..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ConnectionRegistry.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence;
-
-/**
- * Contract covering connection for a Doctrine persistence layer ManagerRegistry class to implement.
- *
- * @link   www.doctrine-project.org
- * @since  2.2
- * @author Fabien Potencier <fabien@symfony.com>
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Lukas Kahwe Smith <smith@pooteeweet.org>
- */
-interface ConnectionRegistry
-{
-    /**
-     * Gets the default connection name.
-     *
-     * @return string The default connection name.
-     */
-    public function getDefaultConnectionName();
-
-    /**
-     * Gets the named connection.
-     *
-     * @param string $name The connection name (null for the default one).
-     *
-     * @return object
-     */
-    public function getConnection($name = null);
-
-    /**
-     * Gets an array of all registered connections.
-     *
-     * @return array An array of Connection instances.
-     */
-    public function getConnections();
-
-    /**
-     * Gets all connection names.
-     *
-     * @return array An array of connection names.
-     */
-    public function getConnectionNames();
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/LifecycleEventArgs.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/LifecycleEventArgs.php
deleted file mode 100644
index 52f41c0..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/LifecycleEventArgs.php
+++ /dev/null
@@ -1,89 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Event;
-
-use Doctrine\Common\EventArgs;
-use Doctrine\Common\Persistence\ObjectManager;
-
-/**
- * Lifecycle Events are triggered by the UnitOfWork during lifecycle transitions
- * of entities.
- *
- * @link   www.doctrine-project.org
- * @since  2.2
- * @author Roman Borschel <roman@code-factory.de>
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-class LifecycleEventArgs extends EventArgs
-{
-    /**
-     * @var ObjectManager
-     */
-    private $objectManager;
-
-    /**
-     * @var object
-     */
-    private $object;
-
-    /**
-     * Constructor.
-     *
-     * @param object        $object
-     * @param ObjectManager $objectManager
-     */
-    public function __construct($object, ObjectManager $objectManager)
-    {
-        $this->object = $object;
-        $this->objectManager = $objectManager;
-    }
-
-    /**
-     * Retrieves the associated entity.
-     *
-     * @deprecated
-     *
-     * @return object
-     */
-    public function getEntity()
-    {
-        return $this->object;
-    }
-
-    /**
-     * Retrieves the associated object.
-     *
-     * @return object
-     */
-    public function getObject()
-    {
-        return $this->object;
-    }
-
-    /**
-     * Retrieves the associated ObjectManager.
-     *
-     * @return ObjectManager
-     */
-    public function getObjectManager()
-    {
-        return $this->objectManager;
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/LoadClassMetadataEventArgs.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/LoadClassMetadataEventArgs.php
deleted file mode 100644
index 07770bb..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/LoadClassMetadataEventArgs.php
+++ /dev/null
@@ -1,75 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Event;
-
-use Doctrine\Common\EventArgs;
-use Doctrine\Common\Persistence\ObjectManager;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-
-/**
- * Class that holds event arguments for a loadMetadata event.
- *
- * @author Jonathan H. Wage <jonwage@gmail.com>
- * @since  2.2
- */
-class LoadClassMetadataEventArgs extends EventArgs
-{
-    /**
-     * @var ClassMetadata
-     */
-    private $classMetadata;
-
-    /**
-     * @var ObjectManager
-     */
-    private $objectManager;
-
-    /**
-     * Constructor.
-     *
-     * @param ClassMetadata $classMetadata
-     * @param ObjectManager $objectManager
-     */
-    public function __construct(ClassMetadata $classMetadata, ObjectManager $objectManager)
-    {
-        $this->classMetadata = $classMetadata;
-        $this->objectManager = $objectManager;
-    }
-
-    /**
-     * Retrieves the associated ClassMetadata.
-     *
-     * @return ClassMetadata
-     */
-    public function getClassMetadata()
-    {
-        return $this->classMetadata;
-    }
-
-    /**
-     * Retrieves the associated ObjectManager.
-     *
-     * @return ObjectManager
-     */
-    public function getObjectManager()
-    {
-        return $this->objectManager;
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/ManagerEventArgs.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/ManagerEventArgs.php
deleted file mode 100644
index 5527d4d..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/ManagerEventArgs.php
+++ /dev/null
@@ -1,59 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Event;
-
-use Doctrine\Common\EventArgs;
-use Doctrine\Common\Persistence\ObjectManager;
-
-/**
- * Provides event arguments for the preFlush event.
- *
- * @link   www.doctrine-project.org
- * @since  2.2
- * @author Roman Borschel <roman@code-factory.de>
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-class ManagerEventArgs extends EventArgs
-{
-    /**
-     * @var ObjectManager
-     */
-    private $objectManager;
-
-    /**
-     * Constructor.
-     *
-     * @param ObjectManager $objectManager
-     */
-    public function __construct(ObjectManager $objectManager)
-    {
-        $this->objectManager = $objectManager;
-    }
-
-    /**
-     * Retrieves the associated ObjectManager.
-     *
-     * @return ObjectManager
-     */
-    public function getObjectManager()
-    {
-        return $this->objectManager;
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/OnClearEventArgs.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/OnClearEventArgs.php
deleted file mode 100644
index b78bad9..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/OnClearEventArgs.php
+++ /dev/null
@@ -1,86 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Event;
-
-use Doctrine\Common\EventArgs;
-use Doctrine\Common\Persistence\ObjectManager;
-
-/**
- * Provides event arguments for the onClear event.
- *
- * @link   www.doctrine-project.org
- * @since  2.2
- * @author Roman Borschel <roman@code-factory.de>
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-class OnClearEventArgs extends EventArgs
-{
-    /**
-     * @var \Doctrine\Common\Persistence\ObjectManager
-     */
-    private $objectManager;
-
-    /**
-     * @var string|null
-     */
-    private $entityClass;
-
-    /**
-     * Constructor.
-     *
-     * @param ObjectManager $objectManager The object manager.
-     * @param string|null   $entityClass   The optional entity class.
-     */
-    public function __construct($objectManager, $entityClass = null)
-    {
-        $this->objectManager = $objectManager;
-        $this->entityClass = $entityClass;
-    }
-
-    /**
-     * Retrieves the associated ObjectManager.
-     *
-     * @return \Doctrine\Common\Persistence\ObjectManager
-     */
-    public function getObjectManager()
-    {
-        return $this->objectManager;
-    }
-
-    /**
-     * Returns the name of the entity class that is cleared, or null if all are cleared.
-     *
-     * @return string|null
-     */
-    public function getEntityClass()
-    {
-        return $this->entityClass;
-    }
-
-    /**
-     * Returns whether this event clears all entities.
-     *
-     * @return bool
-     */
-    public function clearsAllEntities()
-    {
-        return ($this->entityClass === null);
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/PreUpdateEventArgs.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/PreUpdateEventArgs.php
deleted file mode 100644
index d34de84..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Event/PreUpdateEventArgs.php
+++ /dev/null
@@ -1,138 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Event;
-
-use Doctrine\Common\EventArgs;
-use Doctrine\Common\Persistence\ObjectManager;
-
-/**
- * Class that holds event arguments for a preUpdate event.
- *
- * @author Guilherme Blanco <guilehrmeblanco@hotmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @since  2.2
- */
-class PreUpdateEventArgs extends LifecycleEventArgs
-{
-    /**
-     * @var array
-     */
-    private $entityChangeSet;
-
-    /**
-     * Constructor.
-     *
-     * @param object        $entity
-     * @param ObjectManager $objectManager
-     * @param array         $changeSet
-     */
-    public function __construct($entity, ObjectManager $objectManager, array &$changeSet)
-    {
-        parent::__construct($entity, $objectManager);
-
-        $this->entityChangeSet = &$changeSet;
-    }
-
-    /**
-     * Retrieves the entity changeset.
-     *
-     * @return array
-     */
-    public function getEntityChangeSet()
-    {
-        return $this->entityChangeSet;
-    }
-
-    /**
-     * Checks if field has a changeset.
-     *
-     * @param string $field
-     *
-     * @return boolean
-     */
-    public function hasChangedField($field)
-    {
-        return isset($this->entityChangeSet[$field]);
-    }
-
-    /**
-     * Gets the old value of the changeset of the changed field.
-     *
-     * @param string $field
-     *
-     * @return mixed
-     */
-    public function getOldValue($field)
-    {
-        $this->assertValidField($field);
-
-        return $this->entityChangeSet[$field][0];
-    }
-
-    /**
-     * Gets the new value of the changeset of the changed field.
-     *
-     * @param string $field
-     *
-     * @return mixed
-     */
-    public function getNewValue($field)
-    {
-        $this->assertValidField($field);
-
-        return $this->entityChangeSet[$field][1];
-    }
-
-    /**
-     * Sets the new value of this field.
-     *
-     * @param string $field
-     * @param mixed  $value
-     *
-     * @return void
-     */
-    public function setNewValue($field, $value)
-    {
-        $this->assertValidField($field);
-
-        $this->entityChangeSet[$field][1] = $value;
-    }
-
-    /**
-     * Asserts the field exists in changeset.
-     *
-     * @param string $field
-     *
-     * @return void
-     *
-     * @throws \InvalidArgumentException
-     */
-    private function assertValidField($field)
-    {
-        if ( ! isset($this->entityChangeSet[$field])) {
-            throw new \InvalidArgumentException(sprintf(
-                'Field "%s" is not a valid field of the entity "%s" in PreUpdateEventArgs.',
-                $field,
-                get_class($this->getEntity())
-            ));
-        }
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ManagerRegistry.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ManagerRegistry.php
deleted file mode 100644
index fce854b..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ManagerRegistry.php
+++ /dev/null
@@ -1,111 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence;
-
-/**
- * Contract covering object managers for a Doctrine persistence layer ManagerRegistry class to implement.
- *
- * @link   www.doctrine-project.org
- * @since  2.2
- * @author Fabien Potencier <fabien@symfony.com>
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Lukas Kahwe Smith <smith@pooteeweet.org>
- */
-interface ManagerRegistry extends ConnectionRegistry
-{
-    /**
-     * Gets the default object manager name.
-     *
-     * @return string The default object manager name.
-     */
-    public function getDefaultManagerName();
-
-    /**
-     * Gets a named object manager.
-     *
-     * @param string $name The object manager name (null for the default one).
-     *
-     * @return \Doctrine\Common\Persistence\ObjectManager
-     */
-    public function getManager($name = null);
-
-    /**
-     * Gets an array of all registered object managers.
-     *
-     * @return \Doctrine\Common\Persistence\ObjectManager[] An array of ObjectManager instances
-     */
-    public function getManagers();
-
-    /**
-     * Resets a named object manager.
-     *
-     * This method is useful when an object manager has been closed
-     * because of a rollbacked transaction AND when you think that
-     * it makes sense to get a new one to replace the closed one.
-     *
-     * Be warned that you will get a brand new object manager as
-     * the existing one is not useable anymore. This means that any
-     * other object with a dependency on this object manager will
-     * hold an obsolete reference. You can inject the registry instead
-     * to avoid this problem.
-     *
-     * @param string|null $name The object manager name (null for the default one).
-     *
-     * @return \Doctrine\Common\Persistence\ObjectManager
-     */
-    public function resetManager($name = null);
-
-    /**
-     * Resolves a registered namespace alias to the full namespace.
-     *
-     * This method looks for the alias in all registered object managers.
-     *
-     * @param string $alias The alias.
-     *
-     * @return string The full namespace.
-     */
-    public function getAliasNamespace($alias);
-
-    /**
-     * Gets all connection names.
-     *
-     * @return array An array of connection names.
-     */
-    public function getManagerNames();
-
-    /**
-     * Gets the ObjectRepository for an persistent object.
-     *
-     * @param string $persistentObject      The name of the persistent object.
-     * @param string $persistentManagerName The object manager name (null for the default one).
-     *
-     * @return \Doctrine\Common\Persistence\ObjectRepository
-     */
-    public function getRepository($persistentObject, $persistentManagerName = null);
-
-    /**
-     * Gets the object manager associated with a given class.
-     *
-     * @param string $class A persistent object class name.
-     *
-     * @return \Doctrine\Common\Persistence\ObjectManager|null
-     */
-    public function getManagerForClass($class);
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/AbstractClassMetadataFactory.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/AbstractClassMetadataFactory.php
deleted file mode 100644
index 01ad58f..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/AbstractClassMetadataFactory.php
+++ /dev/null
@@ -1,401 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping;
-
-use Doctrine\Common\Cache\Cache;
-use Doctrine\Common\Util\ClassUtils;
-
-/**
- * The ClassMetadataFactory is used to create ClassMetadata objects that contain all the
- * metadata mapping informations of a class which describes how a class should be mapped
- * to a relational database.
- *
- * This class was abstracted from the ORM ClassMetadataFactory.
- *
- * @since  2.2
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-abstract class AbstractClassMetadataFactory implements ClassMetadataFactory
-{
-    /**
-     * Salt used by specific Object Manager implementation.
-     *
-     * @var string
-     */
-    protected $cacheSalt = '$CLASSMETADATA';
-
-    /**
-     * @var \Doctrine\Common\Cache\Cache|null
-     */
-    private $cacheDriver;
-
-    /**
-     * @var array
-     */
-    private $loadedMetadata = array();
-
-    /**
-     * @var bool
-     */
-    protected $initialized = false;
-
-    /**
-     * @var ReflectionService|null
-     */
-    private $reflectionService = null;
-
-    /**
-     * Sets the cache driver used by the factory to cache ClassMetadata instances.
-     *
-     * @param \Doctrine\Common\Cache\Cache $cacheDriver
-     *
-     * @return void
-     */
-    public function setCacheDriver(Cache $cacheDriver = null)
-    {
-        $this->cacheDriver = $cacheDriver;
-    }
-
-    /**
-     * Gets the cache driver used by the factory to cache ClassMetadata instances.
-     *
-     * @return \Doctrine\Common\Cache\Cache|null
-     */
-    public function getCacheDriver()
-    {
-        return $this->cacheDriver;
-    }
-
-    /**
-     * Returns an array of all the loaded metadata currently in memory.
-     *
-     * @return array
-     */
-    public function getLoadedMetadata()
-    {
-        return $this->loadedMetadata;
-    }
-
-    /**
-     * Forces the factory to load the metadata of all classes known to the underlying
-     * mapping driver.
-     *
-     * @return array The ClassMetadata instances of all mapped classes.
-     */
-    public function getAllMetadata()
-    {
-        if ( ! $this->initialized) {
-            $this->initialize();
-        }
-
-        $driver = $this->getDriver();
-        $metadata = array();
-        foreach ($driver->getAllClassNames() as $className) {
-            $metadata[] = $this->getMetadataFor($className);
-        }
-
-        return $metadata;
-    }
-
-    /**
-     * Lazy initialization of this stuff, especially the metadata driver,
-     * since these are not needed at all when a metadata cache is active.
-     *
-     * @return void
-     */
-    abstract protected function initialize();
-
-    /**
-     * Gets the fully qualified class-name from the namespace alias.
-     *
-     * @param string $namespaceAlias
-     * @param string $simpleClassName
-     *
-     * @return string
-     */
-    abstract protected function getFqcnFromAlias($namespaceAlias, $simpleClassName);
-
-    /**
-     * Returns the mapping driver implementation.
-     *
-     * @return \Doctrine\Common\Persistence\Mapping\Driver\MappingDriver
-     */
-    abstract protected function getDriver();
-
-    /**
-     * Wakes up reflection after ClassMetadata gets unserialized from cache.
-     *
-     * @param ClassMetadata     $class
-     * @param ReflectionService $reflService
-     *
-     * @return void
-     */
-    abstract protected function wakeupReflection(ClassMetadata $class, ReflectionService $reflService);
-
-    /**
-     * Initializes Reflection after ClassMetadata was constructed.
-     *
-     * @param ClassMetadata     $class
-     * @param ReflectionService $reflService
-     *
-     * @return void
-     */
-    abstract protected function initializeReflection(ClassMetadata $class, ReflectionService $reflService);
-
-    /**
-     * Checks whether the class metadata is an entity.
-     *
-     * This method should return false for mapped superclasses or embedded classes.
-     *
-     * @param ClassMetadata $class
-     *
-     * @return boolean
-     */
-    abstract protected function isEntity(ClassMetadata $class);
-
-    /**
-     * Gets the class metadata descriptor for a class.
-     *
-     * @param string $className The name of the class.
-     *
-     * @return \Doctrine\Common\Persistence\Mapping\ClassMetadata
-     */
-    public function getMetadataFor($className)
-    {
-        if (isset($this->loadedMetadata[$className])) {
-            return $this->loadedMetadata[$className];
-        }
-
-        $realClassName = $className;
-
-        // Check for namespace alias
-        if (strpos($className, ':') !== false) {
-            list($namespaceAlias, $simpleClassName) = explode(':', $className);
-            $realClassName = $this->getFqcnFromAlias($namespaceAlias, $simpleClassName);
-        } else {
-            $realClassName = ClassUtils::getRealClass($realClassName);
-        }
-
-        if (isset($this->loadedMetadata[$realClassName])) {
-            // We do not have the alias name in the map, include it
-            $this->loadedMetadata[$className] = $this->loadedMetadata[$realClassName];
-
-            return $this->loadedMetadata[$realClassName];
-        }
-
-        if ($this->cacheDriver) {
-            if (($cached = $this->cacheDriver->fetch($realClassName . $this->cacheSalt)) !== false) {
-                $this->loadedMetadata[$realClassName] = $cached;
-                $this->wakeupReflection($cached, $this->getReflectionService());
-            } else {
-                foreach ($this->loadMetadata($realClassName) as $loadedClassName) {
-                    $this->cacheDriver->save(
-                        $loadedClassName . $this->cacheSalt, $this->loadedMetadata[$loadedClassName], null
-                    );
-                }
-            }
-        } else {
-            $this->loadMetadata($realClassName);
-        }
-
-        if ($className != $realClassName) {
-            // We do not have the alias name in the map, include it
-            $this->loadedMetadata[$className] = $this->loadedMetadata[$realClassName];
-        }
-
-        return $this->loadedMetadata[$className];
-    }
-
-    /**
-     * Checks whether the factory has the metadata for a class loaded already.
-     *
-     * @param string $className
-     *
-     * @return boolean TRUE if the metadata of the class in question is already loaded, FALSE otherwise.
-     */
-    public function hasMetadataFor($className)
-    {
-        return isset($this->loadedMetadata[$className]);
-    }
-
-    /**
-     * Sets the metadata descriptor for a specific class.
-     *
-     * NOTE: This is only useful in very special cases, like when generating proxy classes.
-     *
-     * @param string        $className
-     * @param ClassMetadata $class
-     *
-     * @return void
-     */
-    public function setMetadataFor($className, $class)
-    {
-        $this->loadedMetadata[$className] = $class;
-    }
-
-    /**
-     * Gets an array of parent classes for the given entity class.
-     *
-     * @param string $name
-     *
-     * @return array
-     */
-    protected function getParentClasses($name)
-    {
-        // Collect parent classes, ignoring transient (not-mapped) classes.
-        $parentClasses = array();
-        foreach (array_reverse($this->getReflectionService()->getParentClasses($name)) as $parentClass) {
-            if ( ! $this->getDriver()->isTransient($parentClass)) {
-                $parentClasses[] = $parentClass;
-            }
-        }
-        return $parentClasses;
-    }
-
-    /**
-     * Loads the metadata of the class in question and all it's ancestors whose metadata
-     * is still not loaded.
-     *
-     * Important: The class $name does not necesarily exist at this point here.
-     * Scenarios in a code-generation setup might have access to XML/YAML
-     * Mapping files without the actual PHP code existing here. That is why the
-     * {@see Doctrine\Common\Persistence\Mapping\ReflectionService} interface
-     * should be used for reflection.
-     *
-     * @param string $name The name of the class for which the metadata should get loaded.
-     *
-     * @return array
-     */
-    protected function loadMetadata($name)
-    {
-        if ( ! $this->initialized) {
-            $this->initialize();
-        }
-
-        $loaded = array();
-
-        $parentClasses = $this->getParentClasses($name);
-        $parentClasses[] = $name;
-
-        // Move down the hierarchy of parent classes, starting from the topmost class
-        $parent = null;
-        $rootEntityFound = false;
-        $visited = array();
-        $reflService = $this->getReflectionService();
-        foreach ($parentClasses as $className) {
-            if (isset($this->loadedMetadata[$className])) {
-                $parent = $this->loadedMetadata[$className];
-                if ($this->isEntity($parent)) {
-                    $rootEntityFound = true;
-                    array_unshift($visited, $className);
-                }
-                continue;
-            }
-
-            $class = $this->newClassMetadataInstance($className);
-            $this->initializeReflection($class, $reflService);
-
-            $this->doLoadMetadata($class, $parent, $rootEntityFound, $visited);
-
-            $this->loadedMetadata[$className] = $class;
-
-            $parent = $class;
-
-            if ($this->isEntity($class)) {
-                $rootEntityFound = true;
-                array_unshift($visited, $className);
-            }
-
-            $this->wakeupReflection($class, $reflService);
-
-            $loaded[] = $className;
-        }
-
-        return $loaded;
-    }
-
-    /**
-     * Actually loads the metadata from the underlying metadata.
-     *
-     * @param ClassMetadata      $class
-     * @param ClassMetadata|null $parent
-     * @param bool               $rootEntityFound
-     * @param array              $nonSuperclassParents All parent class names
-     *                                                 that are not marked as mapped superclasses.
-     *
-     * @return void
-     */
-    abstract protected function doLoadMetadata($class, $parent, $rootEntityFound, array $nonSuperclassParents);
-
-    /**
-     * Creates a new ClassMetadata instance for the given class name.
-     *
-     * @param string $className
-     *
-     * @return ClassMetadata
-     */
-    abstract protected function newClassMetadataInstance($className);
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isTransient($class)
-    {
-        if ( ! $this->initialized) {
-            $this->initialize();
-        }
-
-        // Check for namespace alias
-        if (strpos($class, ':') !== false) {
-            list($namespaceAlias, $simpleClassName) = explode(':', $class);
-            $class = $this->getFqcnFromAlias($namespaceAlias, $simpleClassName);
-        }
-
-        return $this->getDriver()->isTransient($class);
-    }
-
-    /**
-     * Sets the reflectionService.
-     *
-     * @param ReflectionService $reflectionService
-     *
-     * @return void
-     */
-    public function setReflectionService(ReflectionService $reflectionService)
-    {
-        $this->reflectionService = $reflectionService;
-    }
-
-    /**
-     * Gets the reflection service associated with this metadata factory.
-     *
-     * @return ReflectionService
-     */
-    public function getReflectionService()
-    {
-        if ($this->reflectionService === null) {
-            $this->reflectionService = new RuntimeReflectionService();
-        }
-        return $this->reflectionService;
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/ClassMetadata.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/ClassMetadata.php
deleted file mode 100644
index b8445f1..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/ClassMetadata.php
+++ /dev/null
@@ -1,174 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping;
-
-/**
- * Contract for a Doctrine persistence layer ClassMetadata class to implement.
- *
- * @link   www.doctrine-project.org
- * @since  2.1
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Jonathan Wage <jonwage@gmail.com>
- */
-interface ClassMetadata
-{
-    /**
-     * Gets the fully-qualified class name of this persistent class.
-     *
-     * @return string
-     */
-    public function getName();
-
-    /**
-     * Gets the mapped identifier field name.
-     *
-     * The returned structure is an array of the identifier field names.
-     *
-     * @return array
-     */
-    public function getIdentifier();
-
-    /**
-     * Gets the ReflectionClass instance for this mapped class.
-     *
-     * @return \ReflectionClass
-     */
-    public function getReflectionClass();
-
-    /**
-     * Checks if the given field name is a mapped identifier for this class.
-     *
-     * @param string $fieldName
-     *
-     * @return boolean
-     */
-    public function isIdentifier($fieldName);
-
-    /**
-     * Checks if the given field is a mapped property for this class.
-     *
-     * @param string $fieldName
-     *
-     * @return boolean
-     */
-    public function hasField($fieldName);
-
-    /**
-     * Checks if the given field is a mapped association for this class.
-     *
-     * @param string $fieldName
-     *
-     * @return boolean
-     */
-    public function hasAssociation($fieldName);
-
-    /**
-     * Checks if the given field is a mapped single valued association for this class.
-     *
-     * @param string $fieldName
-     *
-     * @return boolean
-     */
-    public function isSingleValuedAssociation($fieldName);
-
-    /**
-     * Checks if the given field is a mapped collection valued association for this class.
-     *
-     * @param string $fieldName
-     *
-     * @return boolean
-     */
-    public function isCollectionValuedAssociation($fieldName);
-
-    /**
-     * A numerically indexed list of field names of this persistent class.
-     *
-     * This array includes identifier fields if present on this class.
-     *
-     * @return array
-     */
-    public function getFieldNames();
-
-    /**
-     * Returns an array of identifier field names numerically indexed.
-     *
-     * @return array
-     */
-    public function getIdentifierFieldNames();
-
-    /**
-     * Returns a numerically indexed list of association names of this persistent class.
-     *
-     * This array includes identifier associations if present on this class.
-     *
-     * @return array
-     */
-    public function getAssociationNames();
-
-    /**
-     * Returns a type name of this field.
-     *
-     * This type names can be implementation specific but should at least include the php types:
-     * integer, string, boolean, float/double, datetime.
-     *
-     * @param string $fieldName
-     *
-     * @return string
-     */
-    public function getTypeOfField($fieldName);
-
-    /**
-     * Returns the target class name of the given association.
-     *
-     * @param string $assocName
-     *
-     * @return string
-     */
-    public function getAssociationTargetClass($assocName);
-
-    /**
-     * Checks if the association is the inverse side of a bidirectional association.
-     *
-     * @param string $assocName
-     *
-     * @return boolean
-     */
-    public function isAssociationInverseSide($assocName);
-
-    /**
-     * Returns the target field of the owning side of the association.
-     *
-     * @param string $assocName
-     *
-     * @return string
-     */
-    public function getAssociationMappedByTargetField($assocName);
-
-    /**
-     * Returns the identifier of this object as an array with field name as key.
-     *
-     * Has to return an empty array if no identifier isset.
-     *
-     * @param object $object
-     *
-     * @return array
-     */
-    public function getIdentifierValues($object);
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/ClassMetadataFactory.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/ClassMetadataFactory.php
deleted file mode 100644
index 3d82881..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/ClassMetadataFactory.php
+++ /dev/null
@@ -1,76 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping;
-
-/**
- * Contract for a Doctrine persistence layer ClassMetadata class to implement.
- *
- * @link   www.doctrine-project.org
- * @since  2.1
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Jonathan Wage <jonwage@gmail.com>
- */
-interface ClassMetadataFactory
-{
-    /**
-     * Forces the factory to load the metadata of all classes known to the underlying
-     * mapping driver.
-     *
-     * @return array The ClassMetadata instances of all mapped classes.
-     */
-    public function getAllMetadata();
-
-    /**
-     * Gets the class metadata descriptor for a class.
-     *
-     * @param string $className The name of the class.
-     *
-     * @return ClassMetadata
-     */
-    public function getMetadataFor($className);
-
-    /**
-     * Checks whether the factory has the metadata for a class loaded already.
-     *
-     * @param string $className
-     *
-     * @return boolean TRUE if the metadata of the class in question is already loaded, FALSE otherwise.
-     */
-    public function hasMetadataFor($className);
-
-    /**
-     * Sets the metadata descriptor for a specific class.
-     *
-     * @param string $className
-     *
-     * @param ClassMetadata $class
-     */
-    public function setMetadataFor($className, $class);
-
-    /**
-     * Returns whether the class with the specified name should have its metadata loaded.
-     * This is only the case if it is either mapped directly or as a MappedSuperclass.
-     *
-     * @param string $className
-     *
-     * @return boolean
-     */
-    public function isTransient($className);
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/AnnotationDriver.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/AnnotationDriver.php
deleted file mode 100644
index 1737243..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/AnnotationDriver.php
+++ /dev/null
@@ -1,217 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping\Driver;
-
-use Doctrine\Common\Annotations\AnnotationReader;
-use Doctrine\Common\Annotations\AnnotationRegistry;
-use Doctrine\Common\Persistence\Mapping\MappingException;
-
-/**
- * The AnnotationDriver reads the mapping metadata from docblock annotations.
- *
- * @since  2.2
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan H. Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-abstract class AnnotationDriver implements MappingDriver
-{
-    /**
-     * The AnnotationReader.
-     *
-     * @var AnnotationReader
-     */
-    protected $reader;
-
-    /**
-     * The paths where to look for mapping files.
-     *
-     * @var array
-     */
-    protected $paths = array();
-
-    /**
-     * The file extension of mapping documents.
-     *
-     * @var string
-     */
-    protected $fileExtension = '.php';
-
-    /**
-     * Cache for AnnotationDriver#getAllClassNames().
-     *
-     * @var array|null
-     */
-    protected $classNames;
-
-    /**
-     * Name of the entity annotations as keys.
-     *
-     * @var array
-     */
-    protected $entityAnnotationClasses = array();
-
-    /**
-     * Initializes a new AnnotationDriver that uses the given AnnotationReader for reading
-     * docblock annotations.
-     *
-     * @param AnnotationReader  $reader The AnnotationReader to use, duck-typed.
-     * @param string|array|null $paths  One or multiple paths where mapping classes can be found.
-     */
-    public function __construct($reader, $paths = null)
-    {
-        $this->reader = $reader;
-        if ($paths) {
-            $this->addPaths((array) $paths);
-        }
-    }
-
-    /**
-     * Appends lookup paths to metadata driver.
-     *
-     * @param array $paths
-     *
-     * @return void
-     */
-    public function addPaths(array $paths)
-    {
-        $this->paths = array_unique(array_merge($this->paths, $paths));
-    }
-
-    /**
-     * Retrieves the defined metadata lookup paths.
-     *
-     * @return array
-     */
-    public function getPaths()
-    {
-        return $this->paths;
-    }
-
-    /**
-     * Retrieves the current annotation reader.
-     *
-     * @return AnnotationReader
-     */
-    public function getReader()
-    {
-        return $this->reader;
-    }
-
-    /**
-     * Gets the file extension used to look for mapping files under.
-     *
-     * @return string
-     */
-    public function getFileExtension()
-    {
-        return $this->fileExtension;
-    }
-
-    /**
-     * Sets the file extension used to look for mapping files under.
-     *
-     * @param string $fileExtension The file extension to set.
-     *
-     * @return void
-     */
-    public function setFileExtension($fileExtension)
-    {
-        $this->fileExtension = $fileExtension;
-    }
-
-    /**
-     * Returns whether the class with the specified name is transient. Only non-transient
-     * classes, that is entities and mapped superclasses, should have their metadata loaded.
-     *
-     * A class is non-transient if it is annotated with an annotation
-     * from the {@see AnnotationDriver::entityAnnotationClasses}.
-     *
-     * @param string $className
-     *
-     * @return boolean
-     */
-    public function isTransient($className)
-    {
-        $classAnnotations = $this->reader->getClassAnnotations(new \ReflectionClass($className));
-
-        foreach ($classAnnotations as $annot) {
-            if (isset($this->entityAnnotationClasses[get_class($annot)])) {
-                return false;
-            }
-        }
-        return true;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAllClassNames()
-    {
-        if ($this->classNames !== null) {
-            return $this->classNames;
-        }
-
-        if (!$this->paths) {
-            throw MappingException::pathRequired();
-        }
-
-        $classes = array();
-        $includedFiles = array();
-
-        foreach ($this->paths as $path) {
-            if ( ! is_dir($path)) {
-                throw MappingException::fileMappingDriversRequireConfiguredDirectoryPath($path);
-            }
-
-            $iterator = new \RegexIterator(
-                new \RecursiveIteratorIterator(
-                    new \RecursiveDirectoryIterator($path, \FilesystemIterator::SKIP_DOTS),
-                    \RecursiveIteratorIterator::LEAVES_ONLY
-                ),
-                '/^.+' . preg_quote($this->fileExtension) . '$/i',
-                \RecursiveRegexIterator::GET_MATCH
-            );
-
-            foreach ($iterator as $file) {
-                $sourceFile = realpath($file[0]);
-
-                require_once $sourceFile;
-
-                $includedFiles[] = $sourceFile;
-            }
-        }
-
-        $declared = get_declared_classes();
-
-        foreach ($declared as $className) {
-            $rc = new \ReflectionClass($className);
-            $sourceFile = $rc->getFileName();
-            if (in_array($sourceFile, $includedFiles) && ! $this->isTransient($className)) {
-                $classes[] = $className;
-            }
-        }
-
-        $this->classNames = $classes;
-
-        return $classes;
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/DefaultFileLocator.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/DefaultFileLocator.php
deleted file mode 100644
index 6a9e276..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/DefaultFileLocator.php
+++ /dev/null
@@ -1,173 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping\Driver;
-
-use Doctrine\Common\Persistence\Mapping\MappingException;
-
-/**
- * Locates the file that contains the metadata information for a given class name.
- *
- * This behavior is independent of the actual content of the file. It just detects
- * the file which is responsible for the given class name.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- */
-class DefaultFileLocator implements FileLocator
-{
-    /**
-     * The paths where to look for mapping files.
-     *
-     * @var array
-     */
-    protected $paths = array();
-
-    /**
-     * The file extension of mapping documents.
-     *
-     * @var string|null
-     */
-    protected $fileExtension;
-
-    /**
-     * Initializes a new FileDriver that looks in the given path(s) for mapping
-     * documents and operates in the specified operating mode.
-     *
-     * @param string|array $paths         One or multiple paths where mapping documents can be found.
-     * @param string|null  $fileExtension The file extension of mapping documents.
-     */
-    public function __construct($paths, $fileExtension = null)
-    {
-        $this->addPaths((array) $paths);
-        $this->fileExtension = $fileExtension;
-    }
-
-    /**
-     * Appends lookup paths to metadata driver.
-     *
-     * @param array $paths
-     *
-     * @return void
-     */
-    public function addPaths(array $paths)
-    {
-        $this->paths = array_unique(array_merge($this->paths, $paths));
-    }
-
-    /**
-     * Retrieves the defined metadata lookup paths.
-     *
-     * @return array
-     */
-    public function getPaths()
-    {
-        return $this->paths;
-    }
-
-    /**
-     * Gets the file extension used to look for mapping files under.
-     *
-     * @return string|null
-     */
-    public function getFileExtension()
-    {
-        return $this->fileExtension;
-    }
-
-    /**
-     * Sets the file extension used to look for mapping files under.
-     *
-     * @param string|null $fileExtension The file extension to set.
-     *
-     * @return void
-     */
-    public function setFileExtension($fileExtension)
-    {
-        $this->fileExtension = $fileExtension;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function findMappingFile($className)
-    {
-        $fileName = str_replace('\\', '.', $className) . $this->fileExtension;
-
-        // Check whether file exists
-        foreach ($this->paths as $path) {
-            if (is_file($path . DIRECTORY_SEPARATOR . $fileName)) {
-                return $path . DIRECTORY_SEPARATOR . $fileName;
-            }
-        }
-
-        throw MappingException::mappingFileNotFound($className, $fileName);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAllClassNames($globalBasename)
-    {
-        $classes = array();
-
-        if ($this->paths) {
-            foreach ($this->paths as $path) {
-                if ( ! is_dir($path)) {
-                    throw MappingException::fileMappingDriversRequireConfiguredDirectoryPath($path);
-                }
-
-                $iterator = new \RecursiveIteratorIterator(
-                    new \RecursiveDirectoryIterator($path),
-                    \RecursiveIteratorIterator::LEAVES_ONLY
-                );
-
-                foreach ($iterator as $file) {
-                    $fileName = $file->getBasename($this->fileExtension);
-
-                    if ($fileName == $file->getBasename() || $fileName == $globalBasename) {
-                        continue;
-                    }
-
-                    // NOTE: All files found here means classes are not transient!
-                    $classes[] = str_replace('.', '\\', $fileName);
-                }
-            }
-        }
-
-        return $classes;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function fileExists($className)
-    {
-        $fileName = str_replace('\\', '.', $className) . $this->fileExtension;
-
-        // Check whether file exists
-        foreach ((array) $this->paths as $path) {
-            if (is_file($path . DIRECTORY_SEPARATOR . $fileName)) {
-                return true;
-            }
-        }
-
-        return false;
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/FileDriver.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/FileDriver.php
deleted file mode 100644
index ccc64fa..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/FileDriver.php
+++ /dev/null
@@ -1,211 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping\Driver;
-
-use Doctrine\Common\Persistence\Mapping\MappingException;
-
-/**
- * Base driver for file-based metadata drivers.
- *
- * A file driver operates in a mode where it loads the mapping files of individual
- * classes on demand. This requires the user to adhere to the convention of 1 mapping
- * file per class and the file names of the mapping files must correspond to the full
- * class name, including namespace, with the namespace delimiters '\', replaced by dots '.'.
- *
- * @link   www.doctrine-project.org
- * @since  2.2
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan H. Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-abstract class FileDriver implements MappingDriver
-{
-    /**
-     * @var FileLocator
-     */
-    protected $locator;
-
-    /**
-     * @var array|null
-     */
-    protected $classCache;
-
-    /**
-     * @var string|null
-     */
-    protected $globalBasename;
-
-    /**
-     * Initializes a new FileDriver that looks in the given path(s) for mapping
-     * documents and operates in the specified operating mode.
-     *
-     * @param string|array|FileLocator $locator       A FileLocator or one/multiple paths
-     *                                                where mapping documents can be found.
-     * @param string|null              $fileExtension
-     */
-    public function __construct($locator, $fileExtension = null)
-    {
-        if ($locator instanceof FileLocator) {
-            $this->locator = $locator;
-        } else {
-            $this->locator = new DefaultFileLocator((array)$locator, $fileExtension);
-        }
-    }
-
-    /**
-     * Sets the global basename.
-     *
-     * @param string $file
-     *
-     * @return void
-     */
-    public function setGlobalBasename($file)
-    {
-        $this->globalBasename = $file;
-    }
-
-    /**
-     * Retrieves the global basename.
-     *
-     * @return string|null
-     */
-    public function getGlobalBasename()
-    {
-        return $this->globalBasename;
-    }
-
-    /**
-     * Gets the element of schema meta data for the class from the mapping file.
-     * This will lazily load the mapping file if it is not loaded yet.
-     *
-     * @param string $className
-     *
-     * @return array The element of schema meta data.
-     *
-     * @throws MappingException
-     */
-    public function getElement($className)
-    {
-        if ($this->classCache === null) {
-            $this->initialize();
-        }
-
-        if (isset($this->classCache[$className])) {
-            return $this->classCache[$className];
-        }
-
-        $result = $this->loadMappingFile($this->locator->findMappingFile($className));
-        if (!isset($result[$className])) {
-            throw MappingException::invalidMappingFile($className, str_replace('\\', '.', $className) . $this->locator->getFileExtension());
-        }
-
-        return $result[$className];
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isTransient($className)
-    {
-        if ($this->classCache === null) {
-            $this->initialize();
-        }
-
-        if (isset($this->classCache[$className])) {
-            return false;
-        }
-
-        return !$this->locator->fileExists($className);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAllClassNames()
-    {
-        if ($this->classCache === null) {
-            $this->initialize();
-        }
-
-        $classNames = (array)$this->locator->getAllClassNames($this->globalBasename);
-        if ($this->classCache) {
-            $classNames = array_merge(array_keys($this->classCache), $classNames);
-        }
-        return $classNames;
-    }
-
-    /**
-     * Loads a mapping file with the given name and returns a map
-     * from class/entity names to their corresponding file driver elements.
-     *
-     * @param string $file The mapping file to load.
-     *
-     * @return array
-     */
-    abstract protected function loadMappingFile($file);
-
-    /**
-     * Initializes the class cache from all the global files.
-     *
-     * Using this feature adds a substantial performance hit to file drivers as
-     * more metadata has to be loaded into memory than might actually be
-     * necessary. This may not be relevant to scenarios where caching of
-     * metadata is in place, however hits very hard in scenarios where no
-     * caching is used.
-     *
-     * @return void
-     */
-    protected function initialize()
-    {
-        $this->classCache = array();
-        if (null !== $this->globalBasename) {
-            foreach ($this->locator->getPaths() as $path) {
-                $file = $path.'/'.$this->globalBasename.$this->locator->getFileExtension();
-                if (is_file($file)) {
-                    $this->classCache = array_merge(
-                        $this->classCache,
-                        $this->loadMappingFile($file)
-                    );
-                }
-            }
-        }
-    }
-
-    /**
-     * Retrieves the locator used to discover mapping files by className.
-     *
-     * @return FileLocator
-     */
-    public function getLocator()
-    {
-        return $this->locator;
-    }
-
-    /**
-     * Sets the locator used to discover mapping files by className.
-     *
-     * @param FileLocator $locator
-     */
-    public function setLocator(FileLocator $locator)
-    {
-        $this->locator = $locator;
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/FileLocator.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/FileLocator.php
deleted file mode 100644
index f622856..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/FileLocator.php
+++ /dev/null
@@ -1,73 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping\Driver;
-
-/**
- * Locates the file that contains the metadata information for a given class name.
- *
- * This behavior is independent of the actual content of the file. It just detects
- * the file which is responsible for the given class name.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- */
-interface FileLocator
-{
-    /**
-     * Locates mapping file for the given class name.
-     *
-     * @param string $className
-     *
-     * @return string
-     */
-    public function findMappingFile($className);
-
-    /**
-     * Gets all class names that are found with this file locator.
-     *
-     * @param string $globalBasename Passed to allow excluding the basename.
-     *
-     * @return array
-     */
-    public function getAllClassNames($globalBasename);
-
-    /**
-     * Checks if a file can be found for this class name.
-     *
-     * @param string $className
-     *
-     * @return bool
-     */
-    public function fileExists($className);
-
-    /**
-     * Gets all the paths that this file locator looks for mapping files.
-     *
-     * @return array
-     */
-    public function getPaths();
-
-    /**
-     * Gets the file extension that mapping files are suffixed with.
-     *
-     * @return string
-     */
-    public function getFileExtension();
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/MappingDriver.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/MappingDriver.php
deleted file mode 100644
index b5d7ec0..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/MappingDriver.php
+++ /dev/null
@@ -1,58 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping\Driver;
-
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-
-/**
- * Contract for metadata drivers.
- *
- * @since  2.2
- * @author Jonathan H. Wage <jonwage@gmail.com>
- */
-interface MappingDriver
-{
-    /**
-     * Loads the metadata for the specified class into the provided container.
-     *
-     * @param string        $className
-     * @param ClassMetadata $metadata
-     *
-     * @return void
-     */
-    public function loadMetadataForClass($className, ClassMetadata $metadata);
-
-    /**
-     * Gets the names of all mapped classes known to this driver.
-     *
-     * @return array The names of all mapped classes known to this driver.
-     */
-    public function getAllClassNames();
-
-    /**
-     * Returns whether the class with the specified name should have its metadata loaded.
-     * This is only the case if it is either mapped as an Entity or a MappedSuperclass.
-     *
-     * @param string $className
-     *
-     * @return boolean
-     */
-    public function isTransient($className);
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/MappingDriverChain.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/MappingDriverChain.php
deleted file mode 100644
index 5fa9a7a..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/MappingDriverChain.php
+++ /dev/null
@@ -1,166 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping\Driver;
-
-use Doctrine\Common\Persistence\Mapping\Driver\MappingDriver;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-use Doctrine\Common\Persistence\Mapping\MappingException;
-
-/**
- * The DriverChain allows you to add multiple other mapping drivers for
- * certain namespaces.
- *
- * @since  2.2
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan H. Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-class MappingDriverChain implements MappingDriver
-{
-    /**
-     * The default driver.
-     *
-     * @var MappingDriver|null
-     */
-    private $defaultDriver = null;
-
-    /**
-     * @var array
-     */
-    private $drivers = array();
-
-    /**
-     * Gets the default driver.
-     *
-     * @return MappingDriver|null
-     */
-    public function getDefaultDriver()
-    {
-        return $this->defaultDriver;
-    }
-
-    /**
-     * Set the default driver.
-     *
-     * @param MappingDriver $driver
-     *
-     * @return void
-     */
-    public function setDefaultDriver(MappingDriver $driver)
-    {
-        $this->defaultDriver = $driver;
-    }
-
-    /**
-     * Adds a nested driver.
-     *
-     * @param MappingDriver $nestedDriver
-     * @param string        $namespace
-     *
-     * @return void
-     */
-    public function addDriver(MappingDriver $nestedDriver, $namespace)
-    {
-        $this->drivers[$namespace] = $nestedDriver;
-    }
-
-    /**
-     * Gets the array of nested drivers.
-     *
-     * @return array $drivers
-     */
-    public function getDrivers()
-    {
-        return $this->drivers;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function loadMetadataForClass($className, ClassMetadata $metadata)
-    {
-        /* @var $driver MappingDriver */
-        foreach ($this->drivers as $namespace => $driver) {
-            if (strpos($className, $namespace) === 0) {
-                $driver->loadMetadataForClass($className, $metadata);
-                return;
-            }
-        }
-
-        if (null !== $this->defaultDriver) {
-            $this->defaultDriver->loadMetadataForClass($className, $metadata);
-            return;
-        }
-
-        throw MappingException::classNotFoundInNamespaces($className, array_keys($this->drivers));
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAllClassNames()
-    {
-        $classNames = array();
-        $driverClasses = array();
-
-        /* @var $driver MappingDriver */
-        foreach ($this->drivers AS $namespace => $driver) {
-            $oid = spl_object_hash($driver);
-
-            if (!isset($driverClasses[$oid])) {
-                $driverClasses[$oid] = $driver->getAllClassNames();
-            }
-
-            foreach ($driverClasses[$oid] AS $className) {
-                if (strpos($className, $namespace) === 0) {
-                    $classNames[$className] = true;
-                }
-            }
-        }
-
-        if (null !== $this->defaultDriver) {
-            foreach ($this->defaultDriver->getAllClassNames() as $className) {
-                $classNames[$className] = true;
-            }
-        }
-
-        return array_keys($classNames);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isTransient($className)
-    {
-        /* @var $driver MappingDriver */
-        foreach ($this->drivers AS $namespace => $driver) {
-            if (strpos($className, $namespace) === 0) {
-                return $driver->isTransient($className);
-            }
-        }
-
-        if ($this->defaultDriver !== null) {
-            return $this->defaultDriver->isTransient($className);
-        }
-
-        return true;
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/PHPDriver.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/PHPDriver.php
deleted file mode 100644
index 31651f3..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/PHPDriver.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping\Driver;
-
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-
-/**
- * The PHPDriver includes php files which just populate ClassMetadataInfo
- * instances with plain PHP code.
- *
- * @link   www.doctrine-project.org
- * @since  2.0
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan H. Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-class PHPDriver extends FileDriver
-{
-    /**
-     * {@inheritDoc}
-     */
-    protected $metadata;
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __construct($locator, $fileExtension = null)
-    {
-        $fileExtension = ".php";
-        parent::__construct($locator, $fileExtension);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function loadMetadataForClass($className, ClassMetadata $metadata)
-    {
-        $this->metadata = $metadata;
-        $this->loadMappingFile($this->locator->findMappingFile($className));
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    protected function loadMappingFile($file)
-    {
-        $metadata = $this->metadata;
-        include $file;
-
-        return array($metadata->getName() => $metadata);
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/StaticPHPDriver.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/StaticPHPDriver.php
deleted file mode 100644
index df8f477..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/StaticPHPDriver.php
+++ /dev/null
@@ -1,142 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping\Driver;
-
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-use Doctrine\Common\Persistence\Mapping\MappingException;
-
-/**
- * The StaticPHPDriver calls a static loadMetadata() method on your entity
- * classes where you can manually populate the ClassMetadata instance.
- *
- * @link   www.doctrine-project.org
- * @since  2.2
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan H. Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-class StaticPHPDriver implements MappingDriver
-{
-    /**
-     * Paths of entity directories.
-     *
-     * @var array
-     */
-    private $paths = array();
-
-    /**
-     * Map of all class names.
-     *
-     * @var array
-     */
-    private $classNames;
-
-    /**
-     * Constructor.
-     *
-     * @param array|string $paths
-     */
-    public function __construct($paths)
-    {
-        $this->addPaths((array) $paths);
-    }
-
-    /**
-     * Adds paths.
-     *
-     * @param array $paths
-     *
-     * @return void
-     */
-    public function addPaths(array $paths)
-    {
-        $this->paths = array_unique(array_merge($this->paths, $paths));
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function loadMetadataForClass($className, ClassMetadata $metadata)
-    {
-        $className::loadMetadata($metadata);
-    }
-
-    /**
-     * {@inheritDoc}
-     * @todo Same code exists in AnnotationDriver, should we re-use it somehow or not worry about it?
-     */
-    public function getAllClassNames()
-    {
-        if ($this->classNames !== null) {
-            return $this->classNames;
-        }
-
-        if (!$this->paths) {
-            throw MappingException::pathRequired();
-        }
-
-        $classes = array();
-        $includedFiles = array();
-
-        foreach ($this->paths as $path) {
-            if (!is_dir($path)) {
-                throw MappingException::fileMappingDriversRequireConfiguredDirectoryPath($path);
-            }
-
-            $iterator = new \RecursiveIteratorIterator(
-                new \RecursiveDirectoryIterator($path),
-                \RecursiveIteratorIterator::LEAVES_ONLY
-            );
-
-            foreach ($iterator as $file) {
-                if ($file->getBasename('.php') == $file->getBasename()) {
-                    continue;
-                }
-
-                $sourceFile = realpath($file->getPathName());
-                require_once $sourceFile;
-                $includedFiles[] = $sourceFile;
-            }
-        }
-
-        $declared = get_declared_classes();
-
-        foreach ($declared as $className) {
-            $rc = new \ReflectionClass($className);
-            $sourceFile = $rc->getFileName();
-            if (in_array($sourceFile, $includedFiles) && !$this->isTransient($className)) {
-                $classes[] = $className;
-            }
-        }
-
-        $this->classNames = $classes;
-
-        return $classes;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function isTransient($className)
-    {
-        return ! method_exists($className, 'loadMetadata');
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/SymfonyFileLocator.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/SymfonyFileLocator.php
deleted file mode 100644
index dd4d741..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/Driver/SymfonyFileLocator.php
+++ /dev/null
@@ -1,217 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping\Driver;
-
-use Doctrine\Common\Persistence\Mapping\MappingException;
-
-/**
- * The Symfony File Locator makes a simplifying assumptions compared
- * to the DefaultFileLocator. By assuming paths only contain entities of a certain
- * namespace the mapping files consists of the short classname only.
- *
- * @author  Fabien Potencier <fabien@symfony.com>
- * @author  Benjamin Eberlei <kontakt@beberlei.de>
- * @license MIT
- */
-class SymfonyFileLocator implements FileLocator
-{
-    /**
-     * The paths where to look for mapping files.
-     *
-     * @var array
-     */
-    protected $paths = array();
-
-    /**
-     * A map of mapping directory path to namespace prefix used to expand class shortnames.
-     *
-     * @var array
-     */
-    protected $prefixes = array();
-
-    /**
-     * File extension that is searched for.
-     *
-     * @var string|null
-     */
-    protected $fileExtension;
-
-    /**
-     * Constructor.
-     *
-     * @param array       $prefixes
-     * @param string|null $fileExtension
-     */
-    public function __construct(array $prefixes, $fileExtension = null)
-    {
-        $this->addNamespacePrefixes($prefixes);
-        $this->fileExtension = $fileExtension;
-    }
-
-    /**
-     * Adds Namespace Prefixes.
-     *
-     * @param array $prefixes
-     *
-     * @return void
-     */
-    public function addNamespacePrefixes(array $prefixes)
-    {
-        $this->prefixes = array_merge($this->prefixes, $prefixes);
-        $this->paths = array_merge($this->paths, array_keys($prefixes));
-    }
-
-    /**
-     * Gets Namespace Prefixes.
-     *
-     * @return array
-     */
-    public function getNamespacePrefixes()
-    {
-        return $this->prefixes;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getPaths()
-    {
-        return $this->paths;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getFileExtension()
-    {
-        return $this->fileExtension;
-    }
-
-    /**
-     * Sets the file extension used to look for mapping files under.
-     *
-     * @param string $fileExtension The file extension to set.
-     *
-     * @return void
-     */
-    public function setFileExtension($fileExtension)
-    {
-        $this->fileExtension = $fileExtension;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function fileExists($className)
-    {
-        $defaultFileName = str_replace('\\', '.', $className).$this->fileExtension;
-        foreach ($this->paths as $path) {
-            if (!isset($this->prefixes[$path])) {
-                // global namespace class
-                if (is_file($path.DIRECTORY_SEPARATOR.$defaultFileName)) {
-                    return true;
-                }
-
-                continue;
-            }
-
-            $prefix = $this->prefixes[$path];
-
-            if (0 !== strpos($className, $prefix.'\\')) {
-                continue;
-            }
-
-            $filename = $path.'/'.strtr(substr($className, strlen($prefix)+1), '\\', '.').$this->fileExtension;
-            return is_file($filename);
-        }
-
-        return false;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAllClassNames($globalBasename = null)
-    {
-        $classes = array();
-
-        if ($this->paths) {
-            foreach ((array) $this->paths as $path) {
-                if (!is_dir($path)) {
-                    throw MappingException::fileMappingDriversRequireConfiguredDirectoryPath($path);
-                }
-
-                $iterator = new \RecursiveIteratorIterator(
-                    new \RecursiveDirectoryIterator($path),
-                    \RecursiveIteratorIterator::LEAVES_ONLY
-                );
-
-                foreach ($iterator as $file) {
-                    $fileName = $file->getBasename($this->fileExtension);
-
-                    if ($fileName == $file->getBasename() || $fileName == $globalBasename) {
-                        continue;
-                    }
-
-                    // NOTE: All files found here means classes are not transient!
-                    if (isset($this->prefixes[$path])) {
-                        $classes[] = $this->prefixes[$path].'\\'.str_replace('.', '\\', $fileName);
-                    } else {
-                        $classes[] = str_replace('.', '\\', $fileName);
-                    }
-                }
-            }
-        }
-
-        return $classes;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function findMappingFile($className)
-    {
-        $defaultFileName = str_replace('\\', '.', $className).$this->fileExtension;
-        foreach ($this->paths as $path) {
-            if (!isset($this->prefixes[$path])) {
-                if (is_file($path.DIRECTORY_SEPARATOR.$defaultFileName)) {
-                    return $path.DIRECTORY_SEPARATOR.$defaultFileName;
-                }
-
-                continue;
-            }
-
-            $prefix = $this->prefixes[$path];
-
-            if (0 !== strpos($className, $prefix.'\\')) {
-                continue;
-            }
-
-            $filename = $path.'/'.strtr(substr($className, strlen($prefix)+1), '\\', '.').$this->fileExtension;
-            if (is_file($filename)) {
-                return $filename;
-            }
-
-            throw MappingException::mappingFileNotFound($className, $filename);
-        }
-
-        throw MappingException::mappingFileNotFound($className, substr($className, strrpos($className, '\\') + 1).$this->fileExtension);
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/MappingException.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/MappingException.php
deleted file mode 100644
index c8c32b2..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/MappingException.php
+++ /dev/null
@@ -1,98 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping;
-
-/**
- * A MappingException indicates that something is wrong with the mapping setup.
- *
- * @since 2.2
- */
-class MappingException extends \Exception
-{
-    /**
-     * @param string $className
-     * @param array  $namespaces
-     *
-     * @return MappingException
-     */
-    public static function classNotFoundInNamespaces($className, $namespaces)
-    {
-        return new self("The class '" . $className . "' was not found in the ".
-            "chain configured namespaces " . implode(", ", $namespaces));
-    }
-
-    /**
-     * @return MappingException
-     */
-    public static function pathRequired()
-    {
-        return new self("Specifying the paths to your entities is required ".
-            "in the AnnotationDriver to retrieve all class names.");
-    }
-
-    /**
-     * @param string|null $path
-     *
-     * @return MappingException
-     */
-    public static function fileMappingDriversRequireConfiguredDirectoryPath($path = null)
-    {
-        if ( ! empty($path)) {
-            $path = '[' . $path . ']';
-        }
-
-        return new self(
-            'File mapping drivers must have a valid directory path, ' .
-            'however the given path ' . $path . ' seems to be incorrect!'
-        );
-    }
-
-    /**
-     * @param string $entityName
-     * @param string $fileName
-     *
-     * @return MappingException
-     */
-    public static function mappingFileNotFound($entityName, $fileName)
-    {
-        return new self("No mapping file found named '$fileName' for class '$entityName'.");
-    }
-
-    /**
-     * @param string $entityName
-     * @param string $fileName
-     *
-     * @return MappingException
-     */
-    public static function invalidMappingFile($entityName, $fileName)
-    {
-        return new self("Invalid mapping file '$fileName' for class '$entityName'.");
-    }
-
-    /**
-     * @param string $className
-     *
-     * @return \Doctrine\Common\Persistence\Mapping\MappingException
-     */
-    public static function nonExistingClass($className)
-    {
-        return new self("Class '$className' does not exist");
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/ReflectionService.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/ReflectionService.php
deleted file mode 100644
index 0088ed5..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/ReflectionService.php
+++ /dev/null
@@ -1,87 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping;
-
-/**
- * Very simple reflection service abstraction.
- *
- * This is required inside metadata layers that may require either
- * static or runtime reflection.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-interface ReflectionService
-{
-    /**
-     * Returns an array of the parent classes (not interfaces) for the given class.
-     *
-     * @param string $class
-     *
-     * @throws \Doctrine\Common\Persistence\Mapping\MappingException
-     *
-     * @return array
-     */
-    public function getParentClasses($class);
-
-    /**
-     * Returns the shortname of a class.
-     *
-     * @param string $class
-     *
-     * @return string
-     */
-    public function getClassShortName($class);
-
-    /**
-     * @param string $class
-     *
-     * @return string
-     */
-    public function getClassNamespace($class);
-
-    /**
-     * Returns a reflection class instance or null.
-     *
-     * @param string $class
-     *
-     * @return \ReflectionClass|null
-     */
-    public function getClass($class);
-
-    /**
-     * Returns an accessible property (setAccessible(true)) or null.
-     *
-     * @param string $class
-     * @param string $property
-     *
-     * @return \ReflectionProperty|null
-     */
-    public function getAccessibleProperty($class, $property);
-
-    /**
-     * Checks if the class have a public method with the given name.
-     *
-     * @param mixed $class
-     * @param mixed $method
-     *
-     * @return bool
-     */
-    public function hasPublicMethod($class, $method);
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php
deleted file mode 100644
index c5a37a8..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php
+++ /dev/null
@@ -1,97 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping;
-
-use ReflectionClass;
-use ReflectionProperty;
-use Doctrine\Common\Reflection\RuntimePublicReflectionProperty;
-use Doctrine\Common\Persistence\Mapping\MappingException;
-
-/**
- * PHP Runtime Reflection Service.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-class RuntimeReflectionService implements ReflectionService
-{
-    /**
-     * {@inheritDoc}
-     */
-    public function getParentClasses($class)
-    {
-        if ( ! class_exists($class)) {
-            throw MappingException::nonExistingClass($class);
-        }
-
-        return class_parents($class);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getClassShortName($class)
-    {
-        $reflectionClass = new ReflectionClass($class);
-
-        return $reflectionClass->getShortName();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getClassNamespace($class)
-    {
-        $reflectionClass = new ReflectionClass($class);
-
-        return $reflectionClass->getNamespaceName();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getClass($class)
-    {
-        return new ReflectionClass($class);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAccessibleProperty($class, $property)
-    {
-        $reflectionProperty = new ReflectionProperty($class, $property);
-
-        if ($reflectionProperty->isPublic()) {
-            $reflectionProperty = new RuntimePublicReflectionProperty($class, $property);
-        }
-
-        $reflectionProperty->setAccessible(true);
-
-        return $reflectionProperty;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function hasPublicMethod($class, $method)
-    {
-        return method_exists($class, $method) && is_callable(array($class, $method));
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/StaticReflectionService.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/StaticReflectionService.php
deleted file mode 100644
index f903097..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/StaticReflectionService.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence\Mapping;
-
-/**
- * PHP Runtime Reflection Service.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-class StaticReflectionService implements ReflectionService
-{
-    /**
-     * {@inheritDoc}
-     */
-    public function getParentClasses($class)
-    {
-        return array();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getClassShortName($className)
-    {
-        if (strpos($className, '\\') !== false) {
-            $className = substr($className, strrpos($className, "\\")+1);
-        }
-        return $className;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getClassNamespace($className)
-    {
-        $namespace = '';
-        if (strpos($className, '\\') !== false) {
-            $namespace = strrev(substr( strrev($className), strpos(strrev($className), '\\')+1 ));
-        }
-        return $namespace;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getClass($class)
-    {
-        return null;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAccessibleProperty($class, $property)
-    {
-        return null;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function hasPublicMethod($class, $method)
-    {
-        return method_exists($class, $method) && is_callable(array($class, $method));
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ObjectManager.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ObjectManager.php
deleted file mode 100644
index bb29e43..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ObjectManager.php
+++ /dev/null
@@ -1,169 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence;
-
-/**
- * Contract for a Doctrine persistence layer ObjectManager class to implement.
- *
- * @link   www.doctrine-project.org
- * @since  2.1
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Jonathan Wage <jonwage@gmail.com>
- */
-interface ObjectManager
-{
-    /**
-     * Finds a object by its identifier.
-     *
-     * This is just a convenient shortcut for getRepository($className)->find($id).
-     *
-     * @param string $className The class name of the object to find.
-     * @param mixed  $id        The identity of the object to find.
-     *
-     * @return object The found object.
-     */
-    public function find($className, $id);
-
-    /**
-     * Tells the ObjectManager to make an instance managed and persistent.
-     *
-     * The object will be entered into the database as a result of the flush operation.
-     *
-     * NOTE: The persist operation always considers objects that are not yet known to
-     * this ObjectManager as NEW. Do not pass detached objects to the persist operation.
-     *
-     * @param object $object The instance to make managed and persistent.
-     *
-     * @return void
-     */
-    public function persist($object);
-
-    /**
-     * Removes an object instance.
-     *
-     * A removed object will be removed from the database as a result of the flush operation.
-     *
-     * @param object $object The object instance to remove.
-     *
-     * @return void
-     */
-    public function remove($object);
-
-    /**
-     * Merges the state of a detached object into the persistence context
-     * of this ObjectManager and returns the managed copy of the object.
-     * The object passed to merge will not become associated/managed with this ObjectManager.
-     *
-     * @param object $object
-     *
-     * @return object
-     */
-    public function merge($object);
-
-    /**
-     * Clears the ObjectManager. All objects that are currently managed
-     * by this ObjectManager become detached.
-     *
-     * @param string|null $objectName if given, only objects of this type will get detached.
-     *
-     * @return void
-     */
-    public function clear($objectName = null);
-
-    /**
-     * Detaches an object from the ObjectManager, causing a managed object to
-     * become detached. Unflushed changes made to the object if any
-     * (including removal of the object), will not be synchronized to the database.
-     * Objects which previously referenced the detached object will continue to
-     * reference it.
-     *
-     * @param object $object The object to detach.
-     *
-     * @return void
-     */
-    public function detach($object);
-
-    /**
-     * Refreshes the persistent state of an object from the database,
-     * overriding any local changes that have not yet been persisted.
-     *
-     * @param object $object The object to refresh.
-     *
-     * @return void
-     */
-    public function refresh($object);
-
-    /**
-     * Flushes all changes to objects that have been queued up to now to the database.
-     * This effectively synchronizes the in-memory state of managed objects with the
-     * database.
-     *
-     * @return void
-     */
-    public function flush();
-
-    /**
-     * Gets the repository for a class.
-     *
-     * @param string $className
-     *
-     * @return \Doctrine\Common\Persistence\ObjectRepository
-     */
-    public function getRepository($className);
-
-    /**
-     * Returns the ClassMetadata descriptor for a class.
-     *
-     * The class name must be the fully-qualified class name without a leading backslash
-     * (as it is returned by get_class($obj)).
-     *
-     * @param string $className
-     *
-     * @return \Doctrine\Common\Persistence\Mapping\ClassMetadata
-     */
-    public function getClassMetadata($className);
-
-    /**
-     * Gets the metadata factory used to gather the metadata of classes.
-     *
-     * @return \Doctrine\Common\Persistence\Mapping\ClassMetadataFactory
-     */
-    public function getMetadataFactory();
-
-    /**
-     * Helper method to initialize a lazy loading proxy or persistent collection.
-     *
-     * This method is a no-op for other objects.
-     *
-     * @param object $obj
-     *
-     * @return void
-     */
-    public function initializeObject($obj);
-
-    /**
-     * Checks if the object is part of the current UnitOfWork and therefore managed.
-     *
-     * @param object $object
-     *
-     * @return bool
-     */
-    public function contains($object);
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ObjectManagerAware.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ObjectManagerAware.php
deleted file mode 100644
index 9bc248a..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ObjectManagerAware.php
+++ /dev/null
@@ -1,51 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence;
-
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-
-/**
- * Makes a Persistent Objects aware of its own object-manager.
- *
- * Using this interface the managing object manager and class metadata instances
- * are injected into the persistent object after construction. This allows
- * you to implement ActiveRecord functionality on top of the persistence-ignorance
- * that Doctrine propagates.
- *
- * Word of Warning: This is a very powerful hook to change how you can work with your domain models.
- * Using this hook will break the Single Responsibility Principle inside your Domain Objects
- * and increase the coupling of database and objects.
- *
- * Every ObjectManager has to implement this functionality itself.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-interface ObjectManagerAware
-{
-    /**
-     * Injects responsible ObjectManager and the ClassMetadata into this persistent object.
-     *
-     * @param ObjectManager $objectManager
-     * @param ClassMetadata $classMetadata
-     *
-     * @return void
-     */
-    public function injectObjectManager(ObjectManager $objectManager, ClassMetadata $classMetadata);
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ObjectManagerDecorator.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ObjectManagerDecorator.php
deleted file mode 100644
index 8946475..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ObjectManagerDecorator.php
+++ /dev/null
@@ -1,140 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence;
-
-/**
- * Base class to simplify ObjectManager decorators
- *
- * @license http://opensource.org/licenses/MIT MIT
- * @link    www.doctrine-project.org
- * @since   2.4
- * @author  Lars Strojny <lars@strojny.net>
- */
-abstract class ObjectManagerDecorator implements ObjectManager
-{
-    /**
-     * @var ObjectManager
-     */
-    protected $wrapped;
-
-    /**
-     * {@inheritdoc}
-     */
-    public function find($className, $id)
-    {
-        return $this->wrapped->find($className, $id);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function persist($object)
-    {
-        return $this->wrapped->persist($object);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function remove($object)
-    {
-        return $this->wrapped->remove($object);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function merge($object)
-    {
-        return $this->wrapped->merge($object);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function clear($objectName = null)
-    {
-        return $this->wrapped->clear($objectName);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function detach($object)
-    {
-        return $this->wrapped->detach($object);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function refresh($object)
-    {
-        return $this->wrapped->refresh($object);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function flush()
-    {
-        return $this->wrapped->flush();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getRepository($className)
-    {
-        return $this->wrapped->getRepository($className);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getClassMetadata($className)
-    {
-        return $this->wrapped->getClassMetadata($className);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function getMetadataFactory()
-    {
-        return $this->wrapped->getMetadataFactory();
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function initializeObject($obj)
-    {
-        return $this->wrapped->initializeObject($obj);
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    public function contains($object)
-    {
-        return $this->wrapped->contains($object);
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ObjectRepository.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ObjectRepository.php
deleted file mode 100644
index f607219..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/ObjectRepository.php
+++ /dev/null
@@ -1,81 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence;
-
-/**
- * Contract for a Doctrine persistence layer ObjectRepository class to implement.
- *
- * @link   www.doctrine-project.org
- * @since  2.1
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Jonathan Wage <jonwage@gmail.com>
- */
-interface ObjectRepository
-{
-    /**
-     * Finds an object by its primary key / identifier.
-     *
-     * @param mixed $id The identifier.
-     *
-     * @return object The object.
-     */
-    public function find($id);
-
-    /**
-     * Finds all objects in the repository.
-     *
-     * @return array The objects.
-     */
-    public function findAll();
-
-    /**
-     * Finds objects by a set of criteria.
-     *
-     * Optionally sorting and limiting details can be passed. An implementation may throw
-     * an UnexpectedValueException if certain values of the sorting or limiting details are
-     * not supported.
-     *
-     * @param array      $criteria
-     * @param array|null $orderBy
-     * @param int|null   $limit
-     * @param int|null   $offset
-     *
-     * @return array The objects.
-     *
-     * @throws \UnexpectedValueException
-     */
-    public function findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null);
-
-    /**
-     * Finds a single object by a set of criteria.
-     *
-     * @param array $criteria The criteria.
-     *
-     * @return object The object.
-     */
-    public function findOneBy(array $criteria);
-
-    /**
-     * Returns the class name of the object managed by the repository.
-     *
-     * @return string
-     */
-    public function getClassName();
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/PersistentObject.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/PersistentObject.php
deleted file mode 100644
index 08c6942..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/PersistentObject.php
+++ /dev/null
@@ -1,254 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence;
-
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-use Doctrine\Common\Collections\ArrayCollection;
-use Doctrine\Common\Collections\Collection;
-
-/**
- * PersistentObject base class that implements getter/setter methods for all mapped fields and associations
- * by overriding __call.
- *
- * This class is a forward compatible implementation of the PersistentObject trait.
- *
- * Limitations:
- *
- * 1. All persistent objects have to be associated with a single ObjectManager, multiple
- *    ObjectManagers are not supported. You can set the ObjectManager with `PersistentObject#setObjectManager()`.
- * 2. Setters and getters only work if a ClassMetadata instance was injected into the PersistentObject.
- *    This is either done on `postLoad` of an object or by accessing the global object manager.
- * 3. There are no hooks for setters/getters. Just implement the method yourself instead of relying on __call().
- * 4. Slower than handcoded implementations: An average of 7 method calls per access to a field and 11 for an association.
- * 5. Only the inverse side associations get autoset on the owning side as well. Setting objects on the owning side
- *    will not set the inverse side associations.
- *
- * @example
- *
- *  PersistentObject::setObjectManager($em);
- *
- *  class Foo extends PersistentObject
- *  {
- *      private $id;
- *  }
- *
- *  $foo = new Foo();
- *  $foo->getId(); // method exists through __call
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-abstract class PersistentObject implements ObjectManagerAware
-{
-    /**
-     * @var ObjectManager|null
-     */
-    private static $objectManager = null;
-
-    /**
-     * @var ClassMetadata|null
-     */
-    private $cm = null;
-
-    /**
-     * Sets the object manager responsible for all persistent object base classes.
-     *
-     * @param ObjectManager|null $objectManager
-     *
-     * @return void
-     */
-    static public function setObjectManager(ObjectManager $objectManager = null)
-    {
-        self::$objectManager = $objectManager;
-    }
-
-    /**
-     * @return ObjectManager|null
-     */
-    static public function getObjectManager()
-    {
-        return self::$objectManager;
-    }
-
-    /**
-     * Injects the Doctrine Object Manager.
-     *
-     * @param ObjectManager $objectManager
-     * @param ClassMetadata $classMetadata
-     *
-     * @return void
-     *
-     * @throws \RuntimeException
-     */
-    public function injectObjectManager(ObjectManager $objectManager, ClassMetadata $classMetadata)
-    {
-        if ($objectManager !== self::$objectManager) {
-            throw new \RuntimeException("Trying to use PersistentObject with different ObjectManager instances. " .
-                "Was PersistentObject::setObjectManager() called?");
-        }
-
-        $this->cm = $classMetadata;
-    }
-
-    /**
-     * Sets a persistent fields value.
-     *
-     * @param string $field
-     * @param array  $args
-     *
-     * @return void
-     *
-     * @throws \BadMethodCallException   When no persistent field exists by that name.
-     * @throws \InvalidArgumentException When the wrong target object type is passed to an association.
-     */
-    private function set($field, $args)
-    {
-        $this->initializeDoctrine();
-
-        if ($this->cm->hasField($field) && !$this->cm->isIdentifier($field)) {
-            $this->$field = $args[0];
-        } else if ($this->cm->hasAssociation($field) && $this->cm->isSingleValuedAssociation($field)) {
-            $targetClass = $this->cm->getAssociationTargetClass($field);
-            if (!($args[0] instanceof $targetClass) && $args[0] !== null) {
-                throw new \InvalidArgumentException("Expected persistent object of type '".$targetClass."'");
-            }
-            $this->$field = $args[0];
-            $this->completeOwningSide($field, $targetClass, $args[0]);
-        } else {
-            throw new \BadMethodCallException("no field with name '".$field."' exists on '".$this->cm->getName()."'");
-        }
-    }
-
-    /**
-     * Gets a persistent field value.
-     *
-     * @param string $field
-     *
-     * @return mixed
-     *
-     * @throws \BadMethodCallException When no persistent field exists by that name.
-     */
-    private function get($field)
-    {
-        $this->initializeDoctrine();
-
-        if ( $this->cm->hasField($field) || $this->cm->hasAssociation($field) ) {
-            return $this->$field;
-        } else {
-            throw new \BadMethodCallException("no field with name '".$field."' exists on '".$this->cm->getName()."'");
-        }
-    }
-
-    /**
-     * If this is an inverse side association, completes the owning side.
-     *
-     * @param string        $field
-     * @param ClassMetadata $targetClass
-     * @param object        $targetObject
-     *
-     * @return void
-     */
-    private function completeOwningSide($field, $targetClass, $targetObject)
-    {
-        // add this object on the owning side as well, for obvious infinite recursion
-        // reasons this is only done when called on the inverse side.
-        if ($this->cm->isAssociationInverseSide($field)) {
-            $mappedByField = $this->cm->getAssociationMappedByTargetField($field);
-            $targetMetadata = self::$objectManager->getClassMetadata($targetClass);
-
-            $setter = ($targetMetadata->isCollectionValuedAssociation($mappedByField) ? "add" : "set").$mappedByField;
-            $targetObject->$setter($this);
-        }
-    }
-
-    /**
-     * Adds an object to a collection.
-     *
-     * @param string $field
-     * @param array  $args
-     *
-     * @return void
-     *
-     * @throws \BadMethodCallException
-     * @throws \InvalidArgumentException
-     */
-    private function add($field, $args)
-    {
-        $this->initializeDoctrine();
-
-        if ($this->cm->hasAssociation($field) && $this->cm->isCollectionValuedAssociation($field)) {
-            $targetClass = $this->cm->getAssociationTargetClass($field);
-            if (!($args[0] instanceof $targetClass)) {
-                throw new \InvalidArgumentException("Expected persistent object of type '".$targetClass."'");
-            }
-            if (!($this->$field instanceof Collection)) {
-                $this->$field = new ArrayCollection($this->$field ?: array());
-            }
-            $this->$field->add($args[0]);
-            $this->completeOwningSide($field, $targetClass, $args[0]);
-        } else {
-            throw new \BadMethodCallException("There is no method add".$field."() on ".$this->cm->getName());
-        }
-    }
-
-    /**
-     * Initializes Doctrine Metadata for this class.
-     *
-     * @return void
-     *
-     * @throws \RuntimeException
-     */
-    private function initializeDoctrine()
-    {
-        if ($this->cm !== null) {
-            return;
-        }
-
-        if (!self::$objectManager) {
-            throw new \RuntimeException("No runtime object manager set. Call PersistentObject#setObjectManager().");
-        }
-
-        $this->cm = self::$objectManager->getClassMetadata(get_class($this));
-    }
-
-    /**
-     * Magic methods.
-     *
-     * @param string $method
-     * @param array  $args
-     *
-     * @return mixed
-     *
-     * @throws \BadMethodCallException
-     */
-    public function __call($method, $args)
-    {
-        $command = substr($method, 0, 3);
-        $field = lcfirst(substr($method, 3));
-        if ($command == "set") {
-            $this->set($field, $args);
-        } else if ($command == "get") {
-            return $this->get($field);
-        } else if ($command == "add") {
-            $this->add($field, $args);
-        } else {
-            throw new \BadMethodCallException("There is no method ".$method." on ".$this->cm->getName());
-        }
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Proxy.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Proxy.php
deleted file mode 100644
index 3369eb9..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Proxy.php
+++ /dev/null
@@ -1,59 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Persistence;
-
-/**
- * Interface for proxy classes.
- *
- * @author Roman Borschel <roman@code-factory.org>
- * @since  2.2
- */
-interface Proxy
-{
-    /**
-     * Marker for Proxy class names.
-     *
-     * @var string
-     */
-    const MARKER = '__CG__';
-
-    /**
-     * Length of the proxy marker.
-     *
-     * @var integer
-     */
-    const MARKER_LENGTH = 6;
-
-    /**
-     * Initializes this proxy if its not yet initialized.
-     *
-     * Acts as a no-op if already initialized.
-     *
-     * @return void
-     */
-    public function __load();
-
-    /**
-     * Returns whether this proxy is initialized or not.
-     *
-     * @return bool
-     */
-    public function __isInitialized();
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/PropertyChangedListener.php b/core/vendor/doctrine/common/lib/Doctrine/Common/PropertyChangedListener.php
deleted file mode 100644
index 1a59cd4..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/PropertyChangedListener.php
+++ /dev/null
@@ -1,45 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common;
-
-/**
- * Contract for classes that are potential listeners of a <tt>NotifyPropertyChanged</tt>
- * implementor.
- *
- * @link   www.doctrine-project.org
- * @since  2.0
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-interface PropertyChangedListener
-{
-    /**
-     * Notifies the listener of a property change.
-     *
-     * @param object $sender       The object on which the property changed.
-     * @param string $propertyName The name of the property that changed.
-     * @param mixed  $oldValue     The old value of the property that changed.
-     * @param mixed  $newValue     The new value of the property that changed.
-     *
-     * @return void
-     */
-    function propertyChanged($sender, $propertyName, $oldValue, $newValue);
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/AbstractProxyFactory.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/AbstractProxyFactory.php
deleted file mode 100644
index b8ba677..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/AbstractProxyFactory.php
+++ /dev/null
@@ -1,184 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Proxy;
-
-use Doctrine\Common\Persistence\Mapping\ClassMetadataFactory;
-use Doctrine\Common\Proxy\Exception\InvalidArgumentException;
-use Doctrine\Common\Util\ClassUtils;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-
-/**
- * Abstract factory for proxy objects.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-abstract class AbstractProxyFactory
-{
-    /**
-     * @var \Doctrine\Common\Persistence\Mapping\ClassMetadataFactory
-     */
-    private $metadataFactory;
-
-    /**
-     * @var \Doctrine\Common\Proxy\ProxyGenerator the proxy generator responsible for creating the proxy classes/files.
-     */
-    private $proxyGenerator;
-
-    /**
-     * @var bool Whether to automatically (re)generate proxy classes.
-     */
-    private $autoGenerate;
-
-    /**
-     * @var \Doctrine\Common\Proxy\ProxyDefinition[]
-     */
-    private $definitions = array();
-
-    /**
-     * @param \Doctrine\Common\Proxy\ProxyGenerator                     $proxyGenerator
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadataFactory $metadataFactory
-     * @param bool                                                      $autoGenerate
-     */
-    public function __construct(ProxyGenerator $proxyGenerator, ClassMetadataFactory $metadataFactory, $autoGenerate)
-    {
-        $this->proxyGenerator  = $proxyGenerator;
-        $this->metadataFactory = $metadataFactory;
-        $this->autoGenerate    = $autoGenerate;
-    }
-
-    /**
-     * Gets a reference proxy instance for the entity of the given type and identified by
-     * the given identifier.
-     *
-     * @param  string $className
-     * @param  array  $identifier
-     *
-     * @return \Doctrine\Common\Proxy\Proxy
-     */
-    public function getProxy($className, array $identifier)
-    {
-        $definition = isset($this->definitions[$className])
-            ? $this->definitions[$className]
-            : $this->getProxyDefinition($className);
-        $fqcn       = $definition->proxyClassName;
-        $proxy      = new $fqcn($definition->initializer, $definition->cloner);
-
-        foreach ($definition->identifierFields as $idField) {
-            $definition->reflectionFields[$idField]->setValue($proxy, $identifier[$idField]);
-        }
-
-        return $proxy;
-    }
-
-    /**
-     * Generates proxy classes for all given classes.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata[] $classes The classes (ClassMetadata instances)
-     *                                                                      for which to generate proxies.
-     * @param string $proxyDir The target directory of the proxy classes. If not specified, the
-     *                         directory configured on the Configuration of the EntityManager used
-     *                         by this factory is used.
-     * @return int Number of generated proxies.
-     */
-    public function generateProxyClasses(array $classes, $proxyDir = null)
-    {
-        $generated = 0;
-
-        foreach ($classes as $class) {
-            if ($this->skipClass($class)) {
-                continue;
-            }
-
-            $proxyFileName = $this->proxyGenerator->getProxyFileName($class->getName(), $proxyDir);
-
-            $this->proxyGenerator->generateProxyClass($class, $proxyFileName);
-
-            $generated += 1;
-        }
-
-        return $generated;
-    }
-
-    /**
-     * Reset initialization/cloning logic for an un-initialized proxy
-     *
-     * @param \Doctrine\Common\Proxy\Proxy $proxy
-     *
-     * @return \Doctrine\Common\Proxy\Proxy
-     *
-     * @throws \Doctrine\Common\Proxy\Exception\InvalidArgumentException
-     */
-    public function resetUninitializedProxy(Proxy $proxy)
-    {
-        if ($proxy->__isInitialized()) {
-            throw InvalidArgumentException::unitializedProxyExpected($proxy);
-        }
-
-        $className  = ClassUtils::getClass($proxy);
-        $definition = isset($this->definitions[$className])
-            ? $this->definitions[$className]
-            : $this->getProxyDefinition($className);
-
-        $proxy->__setInitializer($definition->initializer);
-        $proxy->__setCloner($definition->cloner);
-
-        return $proxy;
-    }
-
-    /**
-     * Get a proxy definition for the given class name.
-     *
-     * @return ProxyDefinition
-     */
-    private function getProxyDefinition($className)
-    {
-        $classMetadata = $this->metadataFactory->getMetadataFor($className);
-        $className     = $classMetadata->getName(); // aliases and case sensitivity
-
-        $this->definitions[$className] = $this->createProxyDefinition($className);
-        $proxyClassName                = $this->definitions[$className]->proxyClassName;
-
-        if ( ! class_exists($proxyClassName, false)) {
-            $fileName  = $this->proxyGenerator->getProxyFileName($className);
-
-            if ($this->autoGenerate) {
-                $this->proxyGenerator->generateProxyClass($classMetadata);
-            }
-
-            require $fileName;
-        }
-
-        return $this->definitions[$className];
-    }
-
-    /**
-     * Determine if this class should be skipped during proxy generation.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $metadata
-     * @return bool
-     */
-    abstract protected function skipClass(ClassMetadata $metadata);
-
-    /**
-     * @return ProxyDefinition
-     */
-    abstract protected function createProxyDefinition($className);
-}
-
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Autoloader.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Autoloader.php
deleted file mode 100644
index 0aa930b..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Autoloader.php
+++ /dev/null
@@ -1,92 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Proxy;
-
-use Doctrine\Common\Proxy\Exception\InvalidArgumentException;
-
-/**
- * Special Autoloader for Proxy classes, which are not PSR-0 compliant.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-class Autoloader
-{
-    /**
-     * Resolves proxy class name to a filename based on the following pattern.
-     *
-     * 1. Remove Proxy namespace from class name.
-     * 2. Remove namespace separators from remaining class name.
-     * 3. Return PHP filename from proxy-dir with the result from 2.
-     *
-     * @param string $proxyDir
-     * @param string $proxyNamespace
-     * @param string $className
-     *
-     * @return string
-     *
-     * @throws InvalidArgumentException
-     */
-    public static function resolveFile($proxyDir, $proxyNamespace, $className)
-    {
-        if (0 !== strpos($className, $proxyNamespace)) {
-            throw InvalidArgumentException::notProxyClass($className, $proxyNamespace);
-        }
-
-        $className = str_replace('\\', '', substr($className, strlen($proxyNamespace) + 1));
-
-        return $proxyDir . DIRECTORY_SEPARATOR . $className . '.php';
-    }
-
-    /**
-     * Registers and returns autoloader callback for the given proxy dir and namespace.
-     *
-     * @param string        $proxyDir
-     * @param string        $proxyNamespace
-     * @param callable|null $notFoundCallback Invoked when the proxy file is not found.
-     *
-     * @return \Closure
-     *
-     * @throws InvalidArgumentException
-     */
-    public static function register($proxyDir, $proxyNamespace, $notFoundCallback = null)
-    {
-        $proxyNamespace = ltrim($proxyNamespace, '\\');
-
-        if ( ! (null === $notFoundCallback || is_callable($notFoundCallback))) {
-            throw InvalidArgumentException::invalidClassNotFoundCallback($notFoundCallback);
-        }
-
-        $autoloader = function ($className) use ($proxyDir, $proxyNamespace, $notFoundCallback) {
-            if (0 === strpos($className, $proxyNamespace)) {
-                $file = Autoloader::resolveFile($proxyDir, $proxyNamespace, $className);
-
-                if ($notFoundCallback && ! file_exists($file)) {
-                    call_user_func($notFoundCallback, $proxyDir, $proxyNamespace, $className);
-                }
-
-                require $file;
-            }
-        };
-
-        spl_autoload_register($autoloader);
-
-        return $autoloader;
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Exception/InvalidArgumentException.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Exception/InvalidArgumentException.php
deleted file mode 100644
index 24a2194..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Exception/InvalidArgumentException.php
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Proxy\Exception;
-
-use Doctrine\Common\Persistence\Proxy;
-use InvalidArgumentException as BaseInvalidArgumentException;
-
-/**
- * Proxy Invalid Argument Exception.
- *
- * @link   www.doctrine-project.org
- * @since  2.4
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class InvalidArgumentException extends BaseInvalidArgumentException implements ProxyException
-{
-    /**
-     * @return self
-     */
-    public static function proxyDirectoryRequired()
-    {
-        return new self('You must configure a proxy directory. See docs for details');
-    }
-
-    /**
-     * @param string $className
-     * @param string $proxyNamespace
-     *
-     * @return self
-     */
-    public static function notProxyClass($className, $proxyNamespace)
-    {
-        return new self(sprintf('The class "%s" is not part of the proxy namespace "%s"', $className, $proxyNamespace));
-    }
-
-    /**
-     * @param string $name
-     *
-     * @return self
-     */
-    public static function invalidPlaceholder($name)
-    {
-        return new self(sprintf('Provided placeholder for "%s" must be either a string or a valid callable', $name));
-    }
-
-    /**
-     * @return self
-     */
-    public static function proxyNamespaceRequired()
-    {
-        return new self('You must configure a proxy namespace');
-    }
-
-    /**
-     * @return self
-     */
-    public static function unitializedProxyExpected(Proxy $proxy)
-    {
-        return new self(sprintf('Provided proxy of type "%s" must not be initialized.', get_class($proxy)));
-    }
-
-    /**
-     * @param mixed $callback
-     *
-     * @return self
-     */
-    public static function invalidClassNotFoundCallback($callback)
-    {
-        $type = is_object($callback) ? get_class($callback) : gettype($callback);
-
-        return new self(sprintf('Invalid \$notFoundCallback given: must be a callable, "%s" given', $type));
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Exception/ProxyException.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Exception/ProxyException.php
deleted file mode 100644
index 0d1ff14..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Exception/ProxyException.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Proxy\Exception;
-
-/**
- * Base exception interface for proxy exceptions.
- *
- * @link   www.doctrine-project.org
- * @since  2.4
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-interface ProxyException
-{
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Exception/UnexpectedValueException.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Exception/UnexpectedValueException.php
deleted file mode 100644
index 73ec64d..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Exception/UnexpectedValueException.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Proxy\Exception;
-
-use UnexpectedValueException as BaseUnexpectedValueException;
-
-/**
- * Proxy Unexpected Value Exception.
- *
- * @link   www.doctrine-project.org
- * @since  2.4
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class UnexpectedValueException extends BaseUnexpectedValueException implements ProxyException
-{
-    /**
-     * @return self
-     */
-    public static function proxyDirectoryNotWritable()
-    {
-        return new self('Your proxy directory must be writable');
-    }
-
-    /**
-     * @param string     $className
-     * @param string     $methodName
-     * @param string     $parameterName
-     * @param \Exception $previous
-     *
-     * @return self
-     */
-    public static function invalidParameterTypeHint($className, $methodName, $parameterName, \Exception $previous)
-    {
-        return new self(
-            sprintf(
-                'The type hint of parameter "%s" in method "%s" in class "%s" is invalid.',
-                $parameterName,
-                $methodName,
-                $className
-            ),
-            0,
-            $previous
-        );
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Proxy.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Proxy.php
deleted file mode 100644
index 8368430..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/Proxy.php
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Proxy;
-
-use Doctrine\Common\Persistence\Proxy as BaseProxy;
-use Closure;
-
-/**
- * Interface for proxy classes.
- *
- * @author Roman Borschel <roman@code-factory.org>
- * @author Marco Pivetta  <ocramius@gmail.com>
- * @since  2.4
- */
-interface Proxy extends BaseProxy
-{
-    /**
-     * Marks the proxy as initialized or not.
-     *
-     * @param boolean $initialized
-     *
-     * @return void
-     */
-    public function __setInitialized($initialized);
-
-    /**
-     * Sets the initializer callback to be used when initializing the proxy. That
-     * initializer should accept 3 parameters: $proxy, $method and $params. Those
-     * are respectively the proxy object that is being initialized, the method name
-     * that triggered initialization and the parameters passed to that method.
-     *
-     * @param Closure|null $initializer
-     *
-     * @return void
-     */
-    public function __setInitializer(Closure $initializer = null);
-
-    /**
-     * Retrieves the initializer callback used to initialize the proxy.
-     *
-     * @see __setInitializer
-     *
-     * @return Closure|null
-     */
-    public function __getInitializer();
-
-    /**
-     * Sets the callback to be used when cloning the proxy. That initializer should accept
-     * a single parameter, which is the cloned proxy instance itself.
-     *
-     * @param Closure|null $cloner
-     *
-     * @return void
-     */
-    public function __setCloner(Closure $cloner = null);
-
-    /**
-     * Retrieves the callback to be used when cloning the proxy.
-     *
-     * @see __setCloner
-     *
-     * @return Closure|null
-     */
-    public function __getCloner();
-
-    /**
-     * Retrieves the list of lazy loaded properties for a given proxy
-     *
-     * @return array Keys are the property names, and values are the default values
-     *               for those properties.
-     */
-    public function __getLazyProperties();
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/ProxyDefinition.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/ProxyDefinition.php
deleted file mode 100644
index 48b149a..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/ProxyDefinition.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Proxy;
-
-/**
- * Definition structure how to create a proxy.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-class ProxyDefinition
-{
-    /**
-     * @var string
-     */
-    public $proxyClassName;
-
-    /**
-     * @var array
-     */
-    public $identifierFields;
-
-    /**
-     * @var \ReflectionProperty[]
-     */
-    public $reflectionFields;
-
-    /**
-     * @var callable
-     */
-    public $initializer;
-
-    /**
-     * @var callable
-     */
-    public $cloner;
-
-    /**
-     * @param string   $proxyClassName
-     * @param array    $identifierFields
-     * @param array    $reflectionFields
-     * @param callable $initializer
-     * @param callable $cloner
-     */
-    public function __construct($proxyClassName, array $identifierFields, array $reflectionFields, $initializer, $cloner)
-    {
-        $this->proxyClassName   = $proxyClassName;
-        $this->identifierFields = $identifierFields;
-        $this->reflectionFields = $reflectionFields;
-        $this->initializer      = $initializer;
-        $this->cloner           = $cloner;
-    }
-}
-
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/ProxyGenerator.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/ProxyGenerator.php
deleted file mode 100644
index 483ab67..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Proxy/ProxyGenerator.php
+++ /dev/null
@@ -1,916 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Proxy;
-
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-use Doctrine\Common\Util\ClassUtils;
-use Doctrine\Common\Proxy\Exception\InvalidArgumentException;
-use Doctrine\Common\Proxy\Exception\UnexpectedValueException;
-
-/**
- * This factory is used to generate proxy classes.
- * It builds proxies from given parameters, a template and class metadata.
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- * @since  2.4
- */
-class ProxyGenerator
-{
-    /**
-     * Used to match very simple id methods that don't need
-     * to be decorated since the identifier is known.
-     */
-    const PATTERN_MATCH_ID_METHOD = '((public\s)?(function\s{1,}%s\s?\(\)\s{1,})\s{0,}{\s{0,}return\s{0,}\$this->%s;\s{0,}})i';
-
-    /**
-     * The namespace that contains all proxy classes.
-     *
-     * @var string
-     */
-    private $proxyNamespace;
-
-    /**
-     * The directory that contains all proxy classes.
-     *
-     * @var string
-     */
-    private $proxyDirectory;
-
-    /**
-     * Map of callables used to fill in placeholders set in the template.
-     *
-     * @var string[]|callable[]
-     */
-    protected $placeholders = array(
-        'baseProxyInterface'   => 'Doctrine\Common\Proxy\Proxy',
-        'additionalProperties' => '',
-    );
-
-    /**
-     * Template used as a blueprint to generate proxies.
-     *
-     * @var string
-     */
-    protected $proxyClassTemplate = '<?php
-
-namespace <namespace>;
-
-/**
- * DO NOT EDIT THIS FILE - IT WAS CREATED BY DOCTRINE\'S PROXY GENERATOR
- */
-class <proxyShortClassName> extends \<className> implements \<baseProxyInterface>
-{
-    /**
-     * @var \Closure the callback responsible for loading properties in the proxy object. This callback is called with
-     *      three parameters, being respectively the proxy object to be initialized, the method that triggered the
-     *      initialization process and an array of ordered parameters that were passed to that method.
-     *
-     * @see \Doctrine\Common\Persistence\Proxy::__setInitializer
-     */
-    public $__initializer__;
-
-    /**
-     * @var \Closure the callback responsible of loading properties that need to be copied in the cloned object
-     *
-     * @see \Doctrine\Common\Persistence\Proxy::__setCloner
-     */
-    public $__cloner__;
-
-    /**
-     * @var boolean flag indicating if this object was already initialized
-     *
-     * @see \Doctrine\Common\Persistence\Proxy::__isInitialized
-     */
-    public $__isInitialized__ = false;
-
-    /**
-     * @var array properties to be lazy loaded, with keys being the property
-     *            names and values being their default values
-     *
-     * @see \Doctrine\Common\Persistence\Proxy::__getLazyProperties
-     */
-    public static $lazyPropertiesDefaults = array(<lazyPropertiesDefaults>);
-
-<additionalProperties>
-
-<constructorImpl>
-
-<magicGet>
-
-<magicSet>
-
-<magicIsset>
-
-<sleepImpl>
-
-<wakeupImpl>
-
-<cloneImpl>
-
-    /**
-     * Forces initialization of the proxy
-     */
-    public function __load()
-    {
-        $this->__initializer__ && $this->__initializer__->__invoke($this, \'__load\', array());
-    }
-
-    /**
-     * {@inheritDoc}
-     * @internal generated method: use only when explicitly handling proxy specific loading logic
-     */
-    public function __isInitialized()
-    {
-        return $this->__isInitialized__;
-    }
-
-    /**
-     * {@inheritDoc}
-     * @internal generated method: use only when explicitly handling proxy specific loading logic
-     */
-    public function __setInitialized($initialized)
-    {
-        $this->__isInitialized__ = $initialized;
-    }
-
-    /**
-     * {@inheritDoc}
-     * @internal generated method: use only when explicitly handling proxy specific loading logic
-     */
-    public function __setInitializer(\Closure $initializer = null)
-    {
-        $this->__initializer__ = $initializer;
-    }
-
-    /**
-     * {@inheritDoc}
-     * @internal generated method: use only when explicitly handling proxy specific loading logic
-     */
-    public function __getInitializer()
-    {
-        return $this->__initializer__;
-    }
-
-    /**
-     * {@inheritDoc}
-     * @internal generated method: use only when explicitly handling proxy specific loading logic
-     */
-    public function __setCloner(\Closure $cloner = null)
-    {
-        $this->__cloner__ = $cloner;
-    }
-
-    /**
-     * {@inheritDoc}
-     * @internal generated method: use only when explicitly handling proxy specific cloning logic
-     */
-    public function __getCloner()
-    {
-        return $this->__cloner__;
-    }
-
-    /**
-     * {@inheritDoc}
-     * @internal generated method: use only when explicitly handling proxy specific loading logic
-     * @static
-     */
-    public function __getLazyProperties()
-    {
-        return self::$lazyPropertiesDefaults;
-    }
-
-    <methods>
-}
-';
-
-    /**
-     * Initializes a new instance of the <tt>ProxyFactory</tt> class that is
-     * connected to the given <tt>EntityManager</tt>.
-     *
-     * @param string $proxyDirectory The directory to use for the proxy classes. It must exist.
-     * @param string $proxyNamespace The namespace to use for the proxy classes.
-     *
-     * @throws InvalidArgumentException
-     */
-    public function __construct($proxyDirectory, $proxyNamespace)
-    {
-        if ( ! $proxyDirectory) {
-            throw InvalidArgumentException::proxyDirectoryRequired();
-        }
-
-        if ( ! $proxyNamespace) {
-            throw InvalidArgumentException::proxyNamespaceRequired();
-        }
-
-        $this->proxyDirectory        = $proxyDirectory;
-        $this->proxyNamespace        = $proxyNamespace;
-    }
-
-    /**
-     * Sets a placeholder to be replaced in the template.
-     *
-     * @param string          $name
-     * @param string|callable $placeholder
-     *
-     * @throws InvalidArgumentException
-     */
-    public function setPlaceholder($name, $placeholder)
-    {
-        if ( ! is_string($placeholder) && ! is_callable($placeholder)) {
-            throw InvalidArgumentException::invalidPlaceholder($name);
-        }
-
-        $this->placeholders[$name] = $placeholder;
-    }
-
-    /**
-     * Sets the base template used to create proxy classes.
-     *
-     * @param string $proxyClassTemplate
-     */
-    public function setProxyClassTemplate($proxyClassTemplate)
-    {
-        $this->proxyClassTemplate = (string) $proxyClassTemplate;
-    }
-
-    /**
-     * Generates a proxy class file.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class    Metadata for the original class.
-     * @param string                                             $fileName Filename (full path) for the generated class.
-     *
-     * @throws UnexpectedValueException
-     */
-    public function generateProxyClass(ClassMetadata $class, $fileName = null)
-    {
-        preg_match_all('(<([a-zA-Z]+)>)', $this->proxyClassTemplate, $placeholderMatches);
-
-        $placeholderMatches = array_combine($placeholderMatches[0], $placeholderMatches[1]);
-        $placeholders       = array();
-
-        foreach ($placeholderMatches as $placeholder => $name) {
-            $placeholders[$placeholder] = isset($this->placeholders[$name])
-                ? $this->placeholders[$name]
-                : array($this, 'generate' . $name);
-        }
-
-        foreach ($placeholders as & $placeholder) {
-            if (is_callable($placeholder)) {
-                $placeholder = call_user_func($placeholder, $class);
-            }
-        }
-
-        $proxyCode       = strtr($this->proxyClassTemplate, $placeholders);
-        $fileName        = $fileName ?: $this->getProxyFileName($class->getName());
-        $parentDirectory = dirname($fileName);
-
-        if ( ! is_dir($parentDirectory) && (false === @mkdir($parentDirectory, 0775, true))) {
-            throw UnexpectedValueException::proxyDirectoryNotWritable();
-        }
-
-        if ( ! is_writable($parentDirectory)) {
-            throw UnexpectedValueException::proxyDirectoryNotWritable();
-        }
-
-        $tmpFileName = $fileName . '.' . uniqid('', true);
-
-        file_put_contents($tmpFileName, $proxyCode);
-        rename($tmpFileName, $fileName);
-    }
-
-    /**
-     * Generates the proxy short class name to be used in the template.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return string
-     */
-    private function generateProxyShortClassName(ClassMetadata $class)
-    {
-        $proxyClassName = ClassUtils::generateProxyClassName($class->getName(), $this->proxyNamespace);
-        $parts          = explode('\\', strrev($proxyClassName), 2);
-
-        return strrev($parts[0]);
-    }
-
-    /**
-     * Generates the proxy namespace.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return string
-     */
-    private function generateNamespace(ClassMetadata $class)
-    {
-        $proxyClassName = ClassUtils::generateProxyClassName($class->getName(), $this->proxyNamespace);
-        $parts = explode('\\', strrev($proxyClassName), 2);
-
-        return strrev($parts[1]);
-    }
-
-    /**
-     * Generates the original class name.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return string
-     */
-    private function generateClassName(ClassMetadata $class)
-    {
-        return ltrim($class->getName(), '\\');
-    }
-
-    /**
-     * Generates the array representation of lazy loaded public properties and their default values.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return string
-     */
-    private function generateLazyPropertiesDefaults(ClassMetadata $class)
-    {
-        $lazyPublicProperties = $this->getLazyLoadedPublicProperties($class);
-        $values               = array();
-
-        foreach ($lazyPublicProperties as $key => $value) {
-            $values[] = var_export($key, true) . ' => ' . var_export($value, true);
-        }
-
-        return implode(', ', $values);
-    }
-
-    /**
-     * Generates the constructor code (un-setting public lazy loaded properties, setting identifier field values).
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return string
-     */
-    private function generateConstructorImpl(ClassMetadata $class)
-    {
-        $constructorImpl = <<<'EOT'
-    /**
-     * @param \Closure $initializer
-     * @param \Closure $cloner
-     */
-    public function __construct($initializer = null, $cloner = null)
-    {
-
-EOT;
-        $toUnset = array();
-
-        foreach ($this->getLazyLoadedPublicProperties($class) as $lazyPublicProperty => $unused) {
-            $toUnset[] = '$this->' . $lazyPublicProperty;
-        }
-
-        $constructorImpl .= (empty($toUnset) ? '' : '        unset(' . implode(', ', $toUnset) . ");\n")
-            . <<<'EOT'
-
-        $this->__initializer__ = $initializer;
-        $this->__cloner__      = $cloner;
-    }
-EOT;
-
-        return $constructorImpl;
-    }
-
-    /**
-     * Generates the magic getter invoked when lazy loaded public properties are requested.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return string
-     */
-    private function generateMagicGet(ClassMetadata $class)
-    {
-        $lazyPublicProperties = array_keys($this->getLazyLoadedPublicProperties($class));
-        $reflectionClass      = $class->getReflectionClass();
-        $hasParentGet         = false;
-        $returnReference      = '';
-        $inheritDoc           = '';
-
-        if ($reflectionClass->hasMethod('__get')) {
-            $hasParentGet = true;
-            $inheritDoc   = '{@inheritDoc}';
-
-            if ($reflectionClass->getMethod('__get')->returnsReference()) {
-                $returnReference = '& ';
-            }
-        }
-
-        if (empty($lazyPublicProperties) && ! $hasParentGet) {
-            return '';
-        }
-
-        $magicGet = <<<EOT
-    /**
-     * $inheritDoc
-     * @param string \$name
-     */
-    public function {$returnReference}__get(\$name)
-    {
-
-EOT;
-
-        if ( ! empty($lazyPublicProperties)) {
-            $magicGet .= <<<'EOT'
-        if (array_key_exists($name, $this->__getLazyProperties())) {
-            $this->__initializer__ && $this->__initializer__->__invoke($this, '__get', array($name));
-
-            return $this->$name;
-        }
-
-
-EOT;
-        }
-
-        if ($hasParentGet) {
-            $magicGet .= <<<'EOT'
-        $this->__initializer__ && $this->__initializer__->__invoke($this, '__get', array($name));
-
-        return parent::__get($name);
-
-EOT;
-        } else {
-            $magicGet .= <<<'EOT'
-        trigger_error(sprintf('Undefined property: %s::$%s', __CLASS__, $name), E_USER_NOTICE);
-
-EOT;
-        }
-
-        $magicGet .= "    }";
-
-        return $magicGet;
-    }
-
-    /**
-     * Generates the magic setter (currently unused).
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return string
-     */
-    private function generateMagicSet(ClassMetadata $class)
-    {
-        $lazyPublicProperties = $this->getLazyLoadedPublicProperties($class);
-        $hasParentSet         = $class->getReflectionClass()->hasMethod('__set');
-
-        if (empty($lazyPublicProperties) && ! $hasParentSet) {
-            return '';
-        }
-
-        $inheritDoc = $hasParentSet ? '{@inheritDoc}' : '';
-        $magicSet   = <<<EOT
-    /**
-     * $inheritDoc
-     * @param string \$name
-     * @param mixed  \$value
-     */
-    public function __set(\$name, \$value)
-    {
-
-EOT;
-
-        if ( ! empty($lazyPublicProperties)) {
-            $magicSet .= <<<'EOT'
-        if (array_key_exists($name, $this->__getLazyProperties())) {
-            $this->__initializer__ && $this->__initializer__->__invoke($this, '__set', array($name, $value));
-
-            $this->$name = $value;
-
-            return;
-        }
-
-
-EOT;
-        }
-
-        if ($hasParentSet) {
-            $magicSet .= <<<'EOT'
-        $this->__initializer__ && $this->__initializer__->__invoke($this, '__set', array($name, $value));
-
-        return parent::__set($name, $value);
-EOT;
-        } else {
-            $magicSet .= "        \$this->\$name = \$value;";
-        }
-
-        $magicSet .= "\n    }";
-
-        return $magicSet;
-    }
-
-    /**
-     * Generates the magic issetter invoked when lazy loaded public properties are checked against isset().
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return string
-     */
-    private function generateMagicIsset(ClassMetadata $class)
-    {
-        $lazyPublicProperties = array_keys($this->getLazyLoadedPublicProperties($class));
-        $hasParentIsset       = $class->getReflectionClass()->hasMethod('__isset');
-
-        if (empty($lazyPublicProperties) && ! $hasParentIsset) {
-            return '';
-        }
-
-        $inheritDoc = $hasParentIsset ? '{@inheritDoc}' : '';
-        $magicIsset = <<<EOT
-    /**
-     * $inheritDoc
-     * @param  string \$name
-     * @return boolean
-     */
-    public function __isset(\$name)
-    {
-
-EOT;
-
-        if ( ! empty($lazyPublicProperties)) {
-            $magicIsset .= <<<'EOT'
-        if (array_key_exists($name, $this->__getLazyProperties())) {
-            $this->__initializer__ && $this->__initializer__->__invoke($this, '__isset', array($name));
-
-            return isset($this->$name);
-        }
-
-
-EOT;
-        }
-
-        if ($hasParentIsset) {
-            $magicIsset .= <<<'EOT'
-        $this->__initializer__ && $this->__initializer__->__invoke($this, '__isset', array($name));
-
-        return parent::__isset($name);
-
-EOT;
-        } else {
-            $magicIsset .= "        return false;";
-        }
-
-        return $magicIsset . "\n    }";
-    }
-
-    /**
-     * Generates implementation for the `__sleep` method of proxies.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return string
-     */
-    private function generateSleepImpl(ClassMetadata $class)
-    {
-        $hasParentSleep = $class->getReflectionClass()->hasMethod('__sleep');
-        $inheritDoc     = $hasParentSleep ? '{@inheritDoc}' : '';
-        $sleepImpl      = <<<EOT
-    /**
-     * $inheritDoc
-     * @return array
-     */
-    public function __sleep()
-    {
-
-EOT;
-
-        if ($hasParentSleep) {
-            return $sleepImpl . <<<'EOT'
-        $properties = array_merge(array('__isInitialized__'), parent::__sleep());
-
-        if ($this->__isInitialized__) {
-            $properties = array_diff($properties, array_keys($this->__getLazyProperties()));
-        }
-
-        return $properties;
-    }
-EOT;
-        }
-
-        $allProperties = array('__isInitialized__');
-
-        /* @var $prop \ReflectionProperty */
-        foreach ($class->getReflectionClass()->getProperties() as $prop) {
-            $allProperties[] = $prop->getName();
-        }
-
-        $lazyPublicProperties = array_keys($this->getLazyLoadedPublicProperties($class));
-        $protectedProperties  = array_diff($allProperties, $lazyPublicProperties);
-
-        foreach ($allProperties as &$property) {
-            $property = var_export($property, true);
-        }
-
-        foreach ($protectedProperties as &$property) {
-            $property = var_export($property, true);
-        }
-
-        $allProperties       = implode(', ', $allProperties);
-        $protectedProperties = implode(', ', $protectedProperties);
-
-        return $sleepImpl . <<<EOT
-        if (\$this->__isInitialized__) {
-            return array($allProperties);
-        }
-
-        return array($protectedProperties);
-    }
-EOT;
-    }
-
-    /**
-     * Generates implementation for the `__wakeup` method of proxies.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return string
-     */
-    private function generateWakeupImpl(ClassMetadata $class)
-    {
-        $unsetPublicProperties = array();
-        $hasWakeup             = $class->getReflectionClass()->hasMethod('__wakeup');
-
-        foreach (array_keys($this->getLazyLoadedPublicProperties($class)) as $lazyPublicProperty) {
-            $unsetPublicProperties[] = '$this->' . $lazyPublicProperty;
-        }
-
-        $shortName  = $this->generateProxyShortClassName($class);
-        $inheritDoc = $hasWakeup ? '{@inheritDoc}' : '';
-        $wakeupImpl = <<<EOT
-    /**
-     * $inheritDoc
-     */
-    public function __wakeup()
-    {
-        if ( ! \$this->__isInitialized__) {
-            \$this->__initializer__ = function ($shortName \$proxy) {
-                \$proxy->__setInitializer(null);
-                \$proxy->__setCloner(null);
-
-                \$existingProperties = get_object_vars(\$proxy);
-
-                foreach (\$proxy->__getLazyProperties() as \$property => \$defaultValue) {
-                    if ( ! array_key_exists(\$property, \$existingProperties)) {
-                        \$proxy->\$property = \$defaultValue;
-                    }
-                }
-            };
-
-EOT;
-
-        if ( ! empty($unsetPublicProperties)) {
-            $wakeupImpl .= "\n            unset(" . implode(', ', $unsetPublicProperties) . ");";
-        }
-
-        $wakeupImpl .= "\n        }";
-
-        if ($hasWakeup) {
-            $wakeupImpl .= "\n        parent::__wakeup();";
-        }
-
-        $wakeupImpl .= "\n    }";
-
-        return $wakeupImpl;
-    }
-
-    /**
-     * Generates implementation for the `__clone` method of proxies.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return string
-     */
-    private function generateCloneImpl(ClassMetadata $class)
-    {
-        $hasParentClone  = $class->getReflectionClass()->hasMethod('__clone');
-        $inheritDoc      = $hasParentClone ? '{@inheritDoc}' : '';
-        $callParentClone = $hasParentClone ? "\n        parent::__clone();\n" : '';
-
-        return <<<EOT
-    /**
-     * $inheritDoc
-     */
-    public function __clone()
-    {
-        \$this->__cloner__ && \$this->__cloner__->__invoke(\$this, '__clone', array());
-$callParentClone    }
-EOT;
-    }
-
-    /**
-     * Generates decorated methods by picking those available in the parent class.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return string
-     */
-    private function generateMethods(ClassMetadata $class)
-    {
-        $methods           = '';
-        $methodNames       = array();
-        $reflectionMethods = $class->getReflectionClass()->getMethods(\ReflectionMethod::IS_PUBLIC);
-        $skippedMethods    = array(
-            '__sleep'   => true,
-            '__clone'   => true,
-            '__wakeup'  => true,
-            '__get'     => true,
-            '__set'     => true,
-            '__isset'   => true,
-        );
-
-        foreach ($reflectionMethods as $method) {
-            $name = $method->getName();
-
-            if (
-                $method->isConstructor() ||
-                isset($skippedMethods[strtolower($name)]) ||
-                isset($methodNames[$name]) ||
-                $method->isFinal() ||
-                $method->isStatic() ||
-                ( ! $method->isPublic())
-            ) {
-                continue;
-            }
-
-            $methodNames[$name] = true;
-            $methods .= "\n    /**\n"
-                . "     * {@inheritDoc}\n"
-                . "     */\n"
-                . '    public function ';
-
-            if ($method->returnsReference()) {
-                $methods .= '&';
-            }
-
-            $methods .= $name . '(';
-
-            $firstParam      = true;
-            $parameterString = '';
-            $argumentString  = '';
-            $parameters      = array();
-
-            foreach ($method->getParameters() as $param) {
-                if ($firstParam) {
-                    $firstParam = false;
-                } else {
-                    $parameterString .= ', ';
-                    $argumentString  .= ', ';
-                }
-
-                try {
-                    $paramClass = $param->getClass();
-                } catch (\ReflectionException $previous) {
-                    throw UnexpectedValueException::invalidParameterTypeHint(
-                        $class->getName(),
-                        $method->getName(),
-                        $param->getName(),
-                        $previous
-                    );
-                }
-
-                // We need to pick the type hint class too
-                if (null !== $paramClass) {
-                    $parameterString .= '\\' . $paramClass->getName() . ' ';
-                } elseif ($param->isArray()) {
-                    $parameterString .= 'array ';
-                } elseif (method_exists($param, 'isCallable') && $param->isCallable()) {
-                    $parameterString .= 'callable ';
-                }
-
-                if ($param->isPassedByReference()) {
-                    $parameterString .= '&';
-                }
-
-                $parameters[] = '$' . $param->getName();
-                $parameterString .= '$' . $param->getName();
-                $argumentString  .= '$' . $param->getName();
-
-                if ($param->isDefaultValueAvailable()) {
-                    $parameterString .= ' = ' . var_export($param->getDefaultValue(), true);
-                }
-            }
-
-            $methods .= $parameterString . ')';
-            $methods .= "\n" . '    {' . "\n";
-
-            if ($this->isShortIdentifierGetter($method, $class)) {
-                $identifier = lcfirst(substr($name, 3));
-                $fieldType  = $class->getTypeOfField($identifier);
-                $cast       = in_array($fieldType, array('integer', 'smallint')) ? '(int) ' : '';
-
-                $methods .= '        if ($this->__isInitialized__ === false) {' . "\n";
-                $methods .= '            return ' . $cast . ' parent::' . $method->getName() . "();\n";
-                $methods .= '        }' . "\n\n";
-            }
-
-            $methods .= "\n        \$this->__initializer__ "
-                . "&& \$this->__initializer__->__invoke(\$this, " . var_export($name, true)
-                . ", array(" . implode(', ', $parameters) . "));"
-                . "\n\n        return parent::" . $name . '(' . $argumentString . ');'
-                . "\n" . '    }' . "\n";
-        }
-
-        return $methods;
-    }
-
-    /**
-     * Generates the Proxy file name.
-     *
-     * @param string $className
-     * @param string $baseDirectory Optional base directory for proxy file name generation.
-     *                              If not specified, the directory configured on the Configuration of the
-     *                              EntityManager will be used by this factory.
-     *
-     * @return string
-     */
-    public function getProxyFileName($className, $baseDirectory = null)
-    {
-        $baseDirectory = $baseDirectory ?: $this->proxyDirectory;
-
-        return rtrim($baseDirectory, DIRECTORY_SEPARATOR) . DIRECTORY_SEPARATOR . Proxy::MARKER
-            . str_replace('\\', '', $className) . '.php';
-    }
-
-    /**
-     * Checks if the method is a short identifier getter.
-     *
-     * What does this mean? For proxy objects the identifier is already known,
-     * however accessing the getter for this identifier usually triggers the
-     * lazy loading, leading to a query that may not be necessary if only the
-     * ID is interesting for the userland code (for example in views that
-     * generate links to the entity, but do not display anything else).
-     *
-     * @param \ReflectionMethod                                  $method
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return boolean
-     */
-    private function isShortIdentifierGetter($method, ClassMetadata $class)
-    {
-        $identifier = lcfirst(substr($method->getName(), 3));
-        $startLine = $method->getStartLine();
-        $endLine = $method->getEndLine();
-        $cheapCheck = (
-            $method->getNumberOfParameters() == 0
-            && substr($method->getName(), 0, 3) == 'get'
-            && in_array($identifier, $class->getIdentifier(), true)
-            && $class->hasField($identifier)
-            && (($endLine - $startLine) <= 4)
-        );
-
-        if ($cheapCheck) {
-            $code = file($method->getDeclaringClass()->getFileName());
-            $code = trim(implode(' ', array_slice($code, $startLine - 1, $endLine - $startLine + 1)));
-
-            $pattern = sprintf(self::PATTERN_MATCH_ID_METHOD, $method->getName(), $identifier);
-
-            if (preg_match($pattern, $code)) {
-                return true;
-            }
-        }
-
-        return false;
-    }
-
-    /**
-     * Generates the list of public properties to be lazy loaded, with their default values.
-     *
-     * @param \Doctrine\Common\Persistence\Mapping\ClassMetadata $class
-     *
-     * @return mixed[]
-     */
-    private function getLazyLoadedPublicProperties(ClassMetadata $class)
-    {
-        $defaultProperties = $class->getReflectionClass()->getDefaultProperties();
-        $properties = array();
-
-        foreach ($class->getReflectionClass()->getProperties(\ReflectionProperty::IS_PUBLIC) as $property) {
-            $name = $property->getName();
-
-            if (($class->hasField($name) || $class->hasAssociation($name)) && ! $class->isIdentifier($name)) {
-                $properties[$name] = $defaultProperties[$name];
-            }
-        }
-
-        return $properties;
-    }
-}
-
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/ClassFinderInterface.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/ClassFinderInterface.php
deleted file mode 100644
index 639fd69..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/ClassFinderInterface.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Reflection;
-
-/**
- * Finds a class in a PSR-0 structure.
- *
- * @author Karoly Negyesi <karoly@negyesi.net>
- */
-interface ClassFinderInterface
-{
-    /**
-     * Finds a class.
-     *
-     * @param string $class The name of the class.
-     *
-     * @return string|null The name of the class or NULL if not found.
-     */
-    public function findFile($class);
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/Psr0FindFile.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/Psr0FindFile.php
deleted file mode 100644
index 418bb0f..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/Psr0FindFile.php
+++ /dev/null
@@ -1,79 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Reflection;
-
-/**
- * Finds a class in a PSR-0 structure.
- *
- * @author Karoly Negyesi <karoly@negyesi.net>
- */
-class Psr0FindFile implements ClassFinderInterface
-{
-    /**
-     * The PSR-0 prefixes.
-     *
-     * @var array
-     */
-    protected $prefixes;
-
-    /**
-     * @param array $prefixes An array of prefixes. Each key is a PHP namespace and each value is
-     *                        a list of directories.
-     */
-    public function __construct($prefixes)
-    {
-        $this->prefixes = $prefixes;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function findFile($class)
-    {
-        $lastNsPos = strrpos($class, '\\');
-        if ('\\' == $class[0]) {
-            $class = substr($class, 1);
-        }
-
-        if (false !== $lastNsPos) {
-            // namespaced class name
-            $classPath = str_replace('\\', DIRECTORY_SEPARATOR, substr($class, 0, $lastNsPos)) . DIRECTORY_SEPARATOR;
-            $className = substr($class, $lastNsPos + 1);
-        } else {
-            // PEAR-like class name
-            $classPath = null;
-            $className = $class;
-        }
-
-        $classPath .= str_replace('_', DIRECTORY_SEPARATOR, $className) . '.php';
-
-        foreach ($this->prefixes as $prefix => $dirs) {
-            if (0 === strpos($class, $prefix)) {
-                foreach ($dirs as $dir) {
-                    if (is_file($dir . DIRECTORY_SEPARATOR . $classPath)) {
-                        return $dir . DIRECTORY_SEPARATOR . $classPath;
-                    }
-                }
-            }
-        }
-
-        return null;
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/ReflectionProviderInterface.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/ReflectionProviderInterface.php
deleted file mode 100644
index 3d970ee..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/ReflectionProviderInterface.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Reflection;
-
-interface ReflectionProviderInterface
-{
-    /**
-     * Gets the ReflectionClass equivalent for this class.
-     *
-     * @return \ReflectionClass
-     */
-    public function getReflectionClass();
-
-    /**
-     * Gets the ReflectionMethod equivalent for this class.
-     *
-     * @param string $name
-     *
-     * @return \ReflectionMethod
-     */
-    public function getReflectionMethod($name);
-
-    /**
-     * Gets the ReflectionProperty equivalent for this class.
-     *
-     * @param string $name
-     *
-     * @return \ReflectionProperty
-     */
-    public function getReflectionProperty($name);
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/RuntimePublicReflectionProperty.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/RuntimePublicReflectionProperty.php
deleted file mode 100644
index f155c45..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/RuntimePublicReflectionProperty.php
+++ /dev/null
@@ -1,76 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Reflection;
-
-use ReflectionProperty;
-use Doctrine\Common\Proxy\Proxy;
-
-/**
- * PHP Runtime Reflection Public Property - special overrides for public properties.
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- * @since  2.4
- */
-class RuntimePublicReflectionProperty extends ReflectionProperty
-{
-    /**
-     * {@inheritDoc}
-     *
-     * Checks is the value actually exist before fetching it.
-     * This is to avoid calling `__get` on the provided $object if it
-     * is a {@see \Doctrine\Common\Proxy\Proxy}.
-     */
-    public function getValue($object = null)
-    {
-        $name = $this->getName();
-
-        if ($object instanceof Proxy && ! $object->__isInitialized()) {
-            $originalInitializer = $object->__getInitializer();
-            $object->__setInitializer(null);
-            $val = isset($object->$name) ? $object->$name : null;
-            $object->__setInitializer($originalInitializer);
-
-            return $val;
-        }
-
-        return isset($object->$name) ? parent::getValue($object) : null;
-    }
-
-    /**
-     * {@inheritDoc}
-     *
-     * Avoids triggering lazy loading via `__set` if the provided object
-     * is a {@see \Doctrine\Common\Proxy\Proxy}.
-     * @link https://bugs.php.net/bug.php?id=63463
-     */
-    public function setValue($object, $value = null)
-    {
-        if ( ! ($object instanceof Proxy && ! $object->__isInitialized())) {
-            parent::setValue($object, $value);
-
-            return;
-        }
-
-        $originalInitializer = $object->__getInitializer();
-        $object->__setInitializer(null);
-        parent::setValue($object, $value);
-        $object->__setInitializer($originalInitializer);
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/StaticReflectionClass.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/StaticReflectionClass.php
deleted file mode 100644
index b65979a..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/StaticReflectionClass.php
+++ /dev/null
@@ -1,433 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Reflection;
-
-use ReflectionClass;
-use ReflectionException;
-
-class StaticReflectionClass extends ReflectionClass
-{
-    /**
-     * The static reflection parser object.
-     *
-     * @var StaticReflectionParser
-     */
-    private $staticReflectionParser;
-
-    /**
-     * @param StaticReflectionParser $staticReflectionParser
-     */
-    public function __construct(StaticReflectionParser $staticReflectionParser)
-    {
-        $this->staticReflectionParser = $staticReflectionParser;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getName()
-    {
-        return $this->staticReflectionParser->getClassName();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getDocComment()
-    {
-        return $this->staticReflectionParser->getDocComment();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getNamespaceName()
-    {
-        return $this->staticReflectionParser->getNamespaceName();
-    }
-
-    /**
-     * @return array
-     */
-    public function getUseStatements()
-    {
-        return $this->staticReflectionParser->getUseStatements();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getMethod($name)
-    {
-        return $this->staticReflectionParser->getReflectionMethod($name);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getProperty($name)
-    {
-        return $this->staticReflectionParser->getReflectionProperty($name);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public static function export($argument, $return = false)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getConstant($name)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getConstants()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getConstructor()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getDefaultProperties()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getEndLine()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getExtension()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getExtensionName()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getFileName()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getInterfaceNames()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getInterfaces()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getMethods($filter = null)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getModifiers()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getParentClass()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getProperties($filter = null)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getShortName()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getStartLine()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getStaticProperties()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getStaticPropertyValue($name, $default = '')
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getTraitAliases()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getTraitNames()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getTraits()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function hasConstant($name)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function hasMethod($name)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function hasProperty($name)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function implementsInterface($interface)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function inNamespace()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isAbstract()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isCloneable()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isFinal()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isInstance($object)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isInstantiable()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isInterface()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isInternal()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isIterateable()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isSubclassOf($class)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isTrait()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isUserDefined()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function newInstance($args)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function newInstanceArgs(array $args = array())
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function newInstanceWithoutConstructor()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function setStaticPropertyValue($name, $value)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __toString()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/StaticReflectionMethod.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/StaticReflectionMethod.php
deleted file mode 100644
index 311e1304..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/StaticReflectionMethod.php
+++ /dev/null
@@ -1,362 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Reflection;
-
-use ReflectionMethod;
-use ReflectionException;
-
-class StaticReflectionMethod extends ReflectionMethod
-{
-    /**
-     * The PSR-0 parser object.
-     *
-     * @var StaticReflectionParser
-     */
-    protected $staticReflectionParser;
-
-    /**
-     * The name of the method.
-     *
-     * @var string
-     */
-    protected $methodName;
-
-    /**
-     * @param StaticReflectionParser $staticReflectionParser
-     * @param string                 $methodName
-     */
-    public function __construct(StaticReflectionParser $staticReflectionParser, $methodName)
-    {
-        $this->staticReflectionParser = $staticReflectionParser;
-        $this->methodName = $methodName;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getName()
-    {
-        return $this->methodName;
-    }
-
-    /**
-     * @return StaticReflectionParser
-     */
-    protected function getStaticReflectionParser()
-    {
-        return $this->staticReflectionParser->getStaticReflectionParserForDeclaringClass('method', $this->methodName);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getDeclaringClass()
-    {
-        return $this->getStaticReflectionParser()->getReflectionClass();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getNamespaceName()
-    {
-        return $this->getStaticReflectionParser()->getNamespaceName();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getDocComment()
-    {
-        return $this->getStaticReflectionParser()->getDocComment('method', $this->methodName);
-    }
-
-    /**
-     * @return array
-     */
-    public function getUseStatements()
-    {
-        return $this->getStaticReflectionParser()->getUseStatements();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public static function export($class, $name, $return = false)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getClosure($object)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getModifiers()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getPrototype()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function invoke($object, $parameter = null)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function invokeArgs($object, array $args)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isAbstract()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isConstructor()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isDestructor()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isFinal()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isPrivate()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isProtected()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isPublic()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isStatic()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function setAccessible($accessible)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __toString()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getClosureThis()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getEndLine()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getExtension()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getExtensionName()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getFileName()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getNumberOfParameters()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getNumberOfRequiredParameters()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getParameters()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getShortName()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getStartLine()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getStaticVariables()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function inNamespace()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isClosure()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isDeprecated()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isInternal()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isUserDefined()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function returnsReference()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/StaticReflectionParser.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/StaticReflectionParser.php
deleted file mode 100644
index 22a2c96..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/StaticReflectionParser.php
+++ /dev/null
@@ -1,307 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Reflection;
-
-use ReflectionException;
-use Doctrine\Common\Annotations\TokenParser;
-
-/**
- * Parses a file for namespaces/use/class declarations.
- *
- * @author Karoly Negyesi <karoly@negyesi.net>
- */
-class StaticReflectionParser implements ReflectionProviderInterface
-{
-    /**
-     * The fully qualified class name.
-     *
-     * @var string
-     */
-    protected $className;
-
-    /**
-     * The short class name.
-     *
-     * @var string
-     */
-    protected $shortClassName;
-
-    /**
-     * Whether the caller only wants class annotations.
-     *
-     * @var boolean.
-     */
-    protected $classAnnotationOptimize;
-
-    /**
-     * Whether the parser has run.
-     *
-     * @var boolean
-     */
-    protected $parsed = false;
-
-    /**
-     * The namespace of the class.
-     *
-     * @var string
-     */
-    protected $namespace = '';
-
-    /**
-     * The use statements of the class.
-     *
-     * @var array
-     */
-    protected $useStatements = array();
-
-    /**
-     * The docComment of the class.
-     *
-     * @var string
-     */
-    protected $docComment = array(
-        'class' => '',
-        'property' => array(),
-        'method' => array()
-    );
-
-    /**
-     * The name of the class this class extends, if any.
-     *
-     * @var string
-     */
-    protected $parentClassName = '';
-
-    /**
-     * The parent PSR-0 Parser.
-     *
-     * @var \Doctrine\Common\Reflection\StaticReflectionParser
-     */
-    protected $parentStaticReflectionParser;
-
-    /**
-     * Parses a class residing in a PSR-0 hierarchy.
-     *
-     * @param string               $className               The full, namespaced class name.
-     * @param ClassFinderInterface $finder                  A ClassFinder object which finds the class.
-     * @param boolean              $classAnnotationOptimize Only retrieve the class docComment.
-     *                                                      Presumes there is only one statement per line.
-     */
-    public function __construct($className, $finder, $classAnnotationOptimize = false)
-    {
-        $this->className = ltrim($className, '\\');
-        $lastNsPos = strrpos($this->className, '\\');
-
-        if ($lastNsPos !== false) {
-            $this->namespace = substr($this->className, 0, $lastNsPos);
-            $this->shortClassName = substr($this->className, $lastNsPos + 1);
-        } else {
-            $this->shortClassName = $this->className;
-        }
-
-        $this->finder = $finder;
-        $this->classAnnotationOptimize = $classAnnotationOptimize;
-    }
-
-    /**
-     * @return void
-     */
-    protected function parse()
-    {
-        if ($this->parsed || !$fileName = $this->finder->findFile($this->className)) {
-            return;
-        }
-        $this->parsed = true;
-        $contents = file_get_contents($fileName);
-        if ($this->classAnnotationOptimize) {
-            if (preg_match("/(\A.*)^\s+(abstract|final)?\s+class\s+{$this->shortClassName}\s+{/sm", $contents, $matches)) {
-                $contents = $matches[1];
-            }
-        }
-        $tokenParser = new TokenParser($contents);
-        $docComment = '';
-        while ($token = $tokenParser->next(false)) {
-            if (is_array($token)) {
-                switch ($token[0]) {
-                    case T_USE:
-                        $this->useStatements = array_merge($this->useStatements, $tokenParser->parseUseStatement());
-                        break;
-                    case T_DOC_COMMENT:
-                        $docComment = $token[1];
-                        break;
-                    case T_CLASS:
-                        $this->docComment['class'] = $docComment;
-                        $docComment = '';
-                        break;
-                    case T_VAR:
-                    case T_PRIVATE:
-                    case T_PROTECTED:
-                    case T_PUBLIC:
-                        $token = $tokenParser->next();
-                        if ($token[0] === T_VARIABLE) {
-                            $propertyName = substr($token[1], 1);
-                            $this->docComment['property'][$propertyName] = $docComment;
-                            continue 2;
-                        }
-                        if ($token[0] !== T_FUNCTION) {
-                            // For example, it can be T_FINAL.
-                            continue 2;
-                        }
-                        // No break.
-                    case T_FUNCTION:
-                        // The next string after function is the name, but
-                        // there can be & before the function name so find the
-                        // string.
-                        while (($token = $tokenParser->next()) && $token[0] !== T_STRING);
-                        $methodName = $token[1];
-                        $this->docComment['method'][$methodName] = $docComment;
-                        $docComment = '';
-                        break;
-                    case T_EXTENDS:
-                        $this->parentClassName = $tokenParser->parseClass();
-                        $nsPos = strpos($this->parentClassName, '\\');
-                        $fullySpecified = false;
-                        if ($nsPos === 0) {
-                            $fullySpecified = true;
-                        } else {
-                            if ($nsPos) {
-                                $prefix = strtolower(substr($this->parentClassName, 0, $nsPos));
-                                $postfix = substr($this->parentClassName, $nsPos);
-                            } else {
-                                $prefix = strtolower($this->parentClassName);
-                                $postfix = '';
-                            }
-                            foreach ($this->useStatements as $alias => $use) {
-                                if ($alias == $prefix) {
-                                    $this->parentClassName = '\\' . $use . $postfix;
-                                    $fullySpecified = true;
-                              }
-                            }
-                        }
-                        if (!$fullySpecified) {
-                            $this->parentClassName = '\\' . $this->namespace . '\\' . $this->parentClassName;
-                        }
-                        break;
-                }
-            }
-        }
-    }
-
-    /**
-     * @return StaticReflectionParser
-     */
-    protected function getParentStaticReflectionParser()
-    {
-        if (empty($this->parentStaticReflectionParser)) {
-            $this->parentStaticReflectionParser = new static($this->parentClassName, $this->finder);
-        }
-
-        return $this->parentStaticReflectionParser;
-    }
-
-    /**
-     * @return string
-     */
-    public function getClassName()
-    {
-        return $this->className;
-    }
-
-    /**
-     * @return string
-     */
-    public function getNamespaceName()
-    {
-        return $this->namespace;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getReflectionClass()
-    {
-        return new StaticReflectionClass($this);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getReflectionMethod($methodName)
-    {
-        return new StaticReflectionMethod($this, $methodName);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getReflectionProperty($propertyName)
-    {
-        return new StaticReflectionProperty($this, $propertyName);
-    }
-
-    /**
-     * Gets the use statements from this file.
-     *
-     * @return array
-     */
-    public function getUseStatements()
-    {
-        $this->parse();
-
-        return $this->useStatements;
-    }
-
-    /**
-     * Gets the doc comment.
-     *
-     * @param string $type The type: 'class', 'property' or 'method'.
-     * @param string $name The name of the property or method, not needed for 'class'.
-     *
-     * @return string The doc comment, empty string if none.
-     */
-    public function getDocComment($type = 'class', $name = '')
-    {
-        $this->parse();
-
-        return $name ? $this->docComment[$type][$name] : $this->docComment[$type];
-    }
-
-    /**
-     * Gets the PSR-0 parser for the declaring class.
-     *
-     * @param string $type The type: 'property' or 'method'.
-     * @param string $name The name of the property or method.
-     *
-     * @return StaticReflectionParser A static reflection parser for the declaring class.
-     *
-     * @throws ReflectionException
-     */
-    public function getStaticReflectionParserForDeclaringClass($type, $name)
-    {
-        $this->parse();
-        if (isset($this->docComment[$type][$name])) {
-            return $this;
-        }
-        if (!empty($this->parentClassName)) {
-            return $this->getParentStaticReflectionParser()->getStaticReflectionParserForDeclaringClass($type, $name);
-        }
-        throw new ReflectionException('Invalid ' . $type . ' "' . $name . '"');
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/StaticReflectionProperty.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/StaticReflectionProperty.php
deleted file mode 100644
index 1664822..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Reflection/StaticReflectionProperty.php
+++ /dev/null
@@ -1,178 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Reflection;
-
-use ReflectionProperty;
-use ReflectionException;
-
-class StaticReflectionProperty extends ReflectionProperty
-{
-    /**
-     * The PSR-0 parser object.
-     *
-     * @var StaticReflectionParser
-     */
-    protected $staticReflectionParser;
-
-    /**
-     * The name of the property.
-     *
-     * @var string|null
-     */
-    protected $propertyName;
-
-    /**
-     * @param StaticReflectionParser $staticReflectionParser
-     * @param string|null            $propertyName
-     */
-    public function __construct(StaticReflectionParser $staticReflectionParser, $propertyName)
-    {
-        $this->staticReflectionParser = $staticReflectionParser;
-        $this->propertyName = $propertyName;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getName()
-    {
-        return $this->propertyName;
-    }
-
-    /**
-     * @return StaticReflectionParser
-     */
-    protected function getStaticReflectionParser()
-    {
-        return $this->staticReflectionParser->getStaticReflectionParserForDeclaringClass('property', $this->propertyName);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getDeclaringClass()
-    {
-        return $this->getStaticReflectionParser()->getReflectionClass();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getDocComment()
-    {
-        return $this->getStaticReflectionParser()->getDocComment('property', $this->propertyName);
-    }
-
-    /**
-     * @return array
-     */
-    public function getUseStatements()
-    {
-        return $this->getStaticReflectionParser()->getUseStatements();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public static function export ($class, $name, $return = false)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getModifiers()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getValue($object = null)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isDefault()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isPrivate()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isProtected()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isPublic()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isStatic()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function setAccessible ($accessible)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function setValue ($object, $value = null)
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __toString()
-    {
-        throw new ReflectionException('Method not implemented');
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Util/ClassUtils.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Util/ClassUtils.php
deleted file mode 100644
index 49dc7bb..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Util/ClassUtils.php
+++ /dev/null
@@ -1,109 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Util;
-
-use Doctrine\Common\Persistence\Proxy;
-
-/**
- * Class and reflection related functionality for objects that
- * might or not be proxy objects at the moment.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Johannes Schmitt <schmittjoh@gmail.com>
- */
-class ClassUtils
-{
-    /**
-     * Gets the real class name of a class name that could be a proxy.
-     *
-     * @param string $class
-     *
-     * @return string
-     */
-    public static function getRealClass($class)
-    {
-        if (false === $pos = strrpos($class, '\\'.Proxy::MARKER.'\\')) {
-            return $class;
-        }
-
-        return substr($class, $pos + Proxy::MARKER_LENGTH + 2);
-    }
-
-    /**
-     * Gets the real class name of an object (even if its a proxy).
-     *
-     * @param object $object
-     *
-     * @return string
-     */
-    public static function getClass($object)
-    {
-        return self::getRealClass(get_class($object));
-    }
-
-    /**
-     * Gets the real parent class name of a class or object.
-     *
-     * @param string $className
-     *
-     * @return string
-     */
-    public static function getParentClass($className)
-    {
-        return get_parent_class( self::getRealClass( $className ) );
-    }
-
-    /**
-     * Creates a new reflection class.
-     *
-     * @param string $class
-     *
-     * @return \ReflectionClass
-     */
-    public static function newReflectionClass($class)
-    {
-        return new \ReflectionClass( self::getRealClass( $class ) );
-    }
-
-    /**
-     * Creates a new reflection object.
-     *
-     * @param object $object
-     *
-     * @return \ReflectionObject
-     */
-    public static function newReflectionObject($object)
-    {
-        return self::newReflectionClass( self::getClass( $object ) );
-    }
-
-    /**
-     * Given a class name and a proxy namespace returns the proxy name.
-     *
-     * @param string $className
-     * @param string $proxyNamespace
-     *
-     * @return string
-     */
-    public static function generateProxyClassName($className, $proxyNamespace)
-    {
-        return rtrim($proxyNamespace, '\\') . '\\'.Proxy::MARKER.'\\' . ltrim($className, '\\');
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Util/Debug.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Util/Debug.php
deleted file mode 100644
index 8f25c9a..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Util/Debug.php
+++ /dev/null
@@ -1,142 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Util;
-
-use Doctrine\Common\Persistence\Proxy;
-
-/**
- * Static class containing most used debug methods.
- *
- * @link   www.doctrine-project.org
- * @since  2.0
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- * @author Giorgio Sironi <piccoloprincipeazzurro@gmail.com>
- */
-final class Debug
-{
-    /**
-     * Private constructor (prevents instantiation).
-     */
-    private function __construct()
-    {
-    }
-
-    /**
-     * Prints a dump of the public, protected and private properties of $var.
-     *
-     * @link http://xdebug.org/
-     *
-     * @param mixed   $var       The variable to dump.
-     * @param integer $maxDepth  The maximum nesting level for object properties.
-     * @param boolean $stripTags Whether output should strip HTML tags.
-     */
-    public static function dump($var, $maxDepth = 2, $stripTags = true)
-    {
-        ini_set('html_errors', 'On');
-
-        if (extension_loaded('xdebug')) {
-            ini_set('xdebug.var_display_max_depth', $maxDepth);
-        }
-
-        $var = self::export($var, $maxDepth++);
-
-        ob_start();
-        var_dump($var);
-        $dump = ob_get_contents();
-        ob_end_clean();
-
-        echo ($stripTags ? strip_tags(html_entity_decode($dump)) : $dump);
-
-        ini_set('html_errors', 'Off');
-    }
-
-    /**
-     * @param mixed $var
-     * @param int   $maxDepth
-     *
-     * @return mixed
-     */
-    public static function export($var, $maxDepth)
-    {
-        $return = null;
-        $isObj = is_object($var);
-
-        if ($isObj && in_array('Doctrine\Common\Collections\Collection', class_implements($var))) {
-            $var = $var->toArray();
-        }
-
-        if ($maxDepth) {
-            if (is_array($var)) {
-                $return = array();
-
-                foreach ($var as $k => $v) {
-                    $return[$k] = self::export($v, $maxDepth - 1);
-                }
-            } else if ($isObj) {
-                $return = new \stdclass();
-                if ($var instanceof \DateTime) {
-                    $return->__CLASS__ = "DateTime";
-                    $return->date = $var->format('c');
-                    $return->timezone = $var->getTimeZone()->getName();
-                } else {
-                    $reflClass = ClassUtils::newReflectionObject($var);
-                    $return->__CLASS__ = ClassUtils::getClass($var);
-
-                    if ($var instanceof Proxy) {
-                        $return->__IS_PROXY__ = true;
-                        $return->__PROXY_INITIALIZED__ = $var->__isInitialized();
-                    }
-
-                    if ($var instanceof \ArrayObject || $var instanceof \ArrayIterator) {
-                        $return->__STORAGE__ = self::export($var->getArrayCopy(), $maxDepth - 1);
-                    }
-
-                    foreach ($reflClass->getProperties() as $reflProperty) {
-                        $name  = $reflProperty->getName();
-
-                        $reflProperty->setAccessible(true);
-                        $return->$name = self::export($reflProperty->getValue($var), $maxDepth - 1);
-                    }
-                }
-            } else {
-                $return = $var;
-            }
-        } else {
-            $return = is_object($var) ? get_class($var)
-                : (is_array($var) ? 'Array(' . count($var) . ')' : $var);
-        }
-
-        return $return;
-    }
-
-    /**
-     * Returns a string representation of an object.
-     *
-     * @param object $obj
-     *
-     * @return string
-     */
-    public static function toString($obj)
-    {
-        return method_exists($obj, '__toString') ? (string) $obj : get_class($obj) . '@' . spl_object_hash($obj);
-    }
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Util/Inflector.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Util/Inflector.php
deleted file mode 100644
index 082dc78..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Util/Inflector.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Util;
-
-use Doctrine\Common\Inflector\Inflector as BaseInflector;
-
-/**
- * Doctrine inflector has static methods for inflecting text.
- *
- * Kept for backwards compatibility reasons, was moved to its own component.
- */
-class Inflector extends BaseInflector
-{
-}
diff --git a/core/vendor/doctrine/common/lib/Doctrine/Common/Version.php b/core/vendor/doctrine/common/lib/Doctrine/Common/Version.php
deleted file mode 100644
index f23a461..0000000
--- a/core/vendor/doctrine/common/lib/Doctrine/Common/Version.php
+++ /dev/null
@@ -1,53 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common;
-
-/**
- * Class to store and retrieve the version of Doctrine.
- *
- * @link   www.doctrine-project.org
- * @since  2.0
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
- * @author Jonathan Wage <jonwage@gmail.com>
- * @author Roman Borschel <roman@code-factory.org>
- */
-class Version
-{
-    /**
-     * Current Doctrine Version.
-     */
-    const VERSION = '2.4.1';
-
-    /**
-     * Compares a Doctrine version with the current one.
-     *
-     * @param string $version Doctrine version to compare.
-     *
-     * @return int -1 if older, 0 if it is the same, 1 if version passed as argument is newer.
-     */
-    public static function compare($version)
-    {
-        $currentVersion = str_replace(' ', '', strtolower(self::VERSION));
-        $version = str_replace(' ', '', $version);
-
-        return version_compare($version, $currentVersion);
-    }
-}
diff --git a/core/vendor/doctrine/common/phpunit.xml.dist b/core/vendor/doctrine/common/phpunit.xml.dist
deleted file mode 100644
index b9d3b34..0000000
--- a/core/vendor/doctrine/common/phpunit.xml.dist
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<phpunit backupGlobals="false"
-         backupStaticAttributes="false"
-         colors="true"
-         convertErrorsToExceptions="true"
-         convertNoticesToExceptions="true"
-         convertWarningsToExceptions="true"
-         processIsolation="false"
-         stopOnFailure="false"
-         syntaxCheck="false"
-         bootstrap="./tests/Doctrine/Tests/TestInit.php"
->
-    <testsuites>
-        <testsuite name="Doctrine Common Test Suite">
-            <directory>./tests/Doctrine/</directory>
-        </testsuite>
-    </testsuites>
-
-    <filter>
-        <whitelist>
-            <directory>./lib/Doctrine/</directory>
-        </whitelist>
-    </filter>
-    
-    <groups>
-        <exclude>
-            <group>performance</group>
-        </exclude>
-    </groups>
-</phpunit>
diff --git a/core/vendor/doctrine/common/tests/.gitignore b/core/vendor/doctrine/common/tests/.gitignore
deleted file mode 100644
index 7210405..0000000
--- a/core/vendor/doctrine/common/tests/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-Doctrine/Tests/Proxies/
-Doctrine/Tests/ORM/Proxy/generated/
-Doctrine/Tests/ORM/Tools/Export/export
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest.php
deleted file mode 100644
index 1eb2216..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest.php
+++ /dev/null
@@ -1,64 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common;
-
-use Doctrine\Common\ClassLoader;
-
-class ClassLoaderTest extends \Doctrine\Tests\DoctrineTestCase
-{
-    public function testClassLoader()
-    {
-        $classLoader = new ClassLoader('ClassLoaderTest');
-        $classLoader->setIncludePath(__DIR__);
-        $classLoader->setFileExtension('.class.php');
-        $classLoader->setNamespaceSeparator('_');
-
-        $this->assertTrue($classLoader->canLoadClass('ClassLoaderTest_ClassA'));
-        $this->assertTrue($classLoader->canLoadClass('ClassLoaderTest_ClassB'));
-        $this->assertTrue($classLoader->canLoadClass('ClassLoaderTest_ClassC'));
-        $this->assertFalse($classLoader->canLoadClass('OtherClass'));
-        $this->assertEquals($classLoader->loadClass('ClassLoaderTest_ClassA'), true);
-        $this->assertEquals($classLoader->loadClass('ClassLoaderTest_ClassB'), true);
-        $this->assertEquals($classLoader->loadClass('ClassLoaderTest_ClassC'), true);
-    }
-
-    public function testClassExists()
-    {
-        $this->assertFalse(ClassLoader::classExists('ClassLoaderTest\ClassD'));
-        $badLoader = function($className) {
-            require __DIR__ . '/ClassLoaderTest/ClassD.php';
-            return true;
-        };
-        spl_autoload_register($badLoader);
-        $this->assertTrue(ClassLoader::classExists('ClassLoaderTest\ClassD'));
-        spl_autoload_unregister($badLoader);
-    }
-
-    public function testGetClassLoader()
-    {
-        $cl = new ClassLoader('ClassLoaderTest', __DIR__);
-        $cl->register();
-        $this->assertTrue(ClassLoader::getClassLoader('ClassLoaderTest\ClassD') instanceof \Doctrine\Common\ClassLoader);
-        $this->assertNull(ClassLoader::getClassLoader('This\Class\Does\Not\Exist'));
-        $cl->unregister();
-    }
-
-    public function testClassExistsWithSilentAutoloader()
-    {
-        $test = $this;
-        $silentLoader = function ($className) use ($test) {
-            $test->assertSame('ClassLoaderTest\ClassE', $className);
-            require __DIR__ . '/ClassLoaderTest/ClassE.php';
-        };
-        $additionalLoader = function () use ($test) {
-            $test->fail('Should not call this loader, class was already loaded');
-        };
-
-        $this->assertFalse(ClassLoader::classExists('ClassLoaderTest\ClassE'));
-        spl_autoload_register($silentLoader);
-        spl_autoload_register($additionalLoader);
-        $this->assertTrue(ClassLoader::classExists('ClassLoaderTest\ClassE'));
-        spl_autoload_unregister($additionalLoader);
-        spl_autoload_unregister($silentLoader);
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassA.class.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassA.class.php
deleted file mode 100644
index 8554654..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassA.class.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class ClassLoaderTest_ClassA
-{
-
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassB.class.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassB.class.php
deleted file mode 100644
index 5afcbeb..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassB.class.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class ClassLoaderTest_ClassB
-{
-
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassC.class.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassC.class.php
deleted file mode 100644
index 0548118..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassC.class.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-class ClassLoaderTest_ClassC
-{
-
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassD.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassD.php
deleted file mode 100644
index 06e4e84..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassD.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-namespace ClassLoaderTest;
-
-class ClassD {}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassE.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassE.php
deleted file mode 100644
index f7a0811..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/ClassLoaderTest/ClassE.php
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-namespace ClassLoaderTest;
-
-class ClassE {}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/DoctrineExceptionTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/DoctrineExceptionTest.php
deleted file mode 100644
index e69de29..0000000
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/EventManagerTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/EventManagerTest.php
deleted file mode 100644
index 2b11b20..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/EventManagerTest.php
+++ /dev/null
@@ -1,88 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common;
-
-use Doctrine\Common\EventManager;
-use Doctrine\Common\EventArgs;
-
-class EventManagerTest extends \Doctrine\Tests\DoctrineTestCase
-{
-    /* Some pseudo events */
-    const preFoo = 'preFoo';
-    const postFoo = 'postFoo';
-    const preBar = 'preBar';
-    const postBar = 'postBar';
-
-    private $_preFooInvoked = false;
-    private $_postFooInvoked = false;
-
-    private $_eventManager;
-
-    protected function setUp()
-    {
-        $this->_eventManager = new EventManager;
-        $this->_preFooInvoked = false;
-        $this->_postFooInvoked = false;
-    }
-
-    public function testInitialState()
-    {
-        $this->assertEquals(array(), $this->_eventManager->getListeners());
-        $this->assertFalse($this->_eventManager->hasListeners(self::preFoo));
-        $this->assertFalse($this->_eventManager->hasListeners(self::postFoo));
-    }
-
-    public function testAddEventListener()
-    {
-        $this->_eventManager->addEventListener(array('preFoo', 'postFoo'), $this);
-        $this->assertTrue($this->_eventManager->hasListeners(self::preFoo));
-        $this->assertTrue($this->_eventManager->hasListeners(self::postFoo));
-        $this->assertEquals(1, count($this->_eventManager->getListeners(self::preFoo)));
-        $this->assertEquals(1, count($this->_eventManager->getListeners(self::postFoo)));
-        $this->assertEquals(2, count($this->_eventManager->getListeners()));
-    }
-
-    public function testDispatchEvent()
-    {
-        $this->_eventManager->addEventListener(array('preFoo', 'postFoo'), $this);
-        $this->_eventManager->dispatchEvent(self::preFoo);
-        $this->assertTrue($this->_preFooInvoked);
-        $this->assertFalse($this->_postFooInvoked);
-    }
-
-    public function testRemoveEventListener()
-    {
-        $this->_eventManager->addEventListener(array('preBar'), $this);
-        $this->assertTrue($this->_eventManager->hasListeners(self::preBar));
-        $this->_eventManager->removeEventListener(array('preBar'), $this);
-        $this->assertFalse($this->_eventManager->hasListeners(self::preBar));
-    }
-
-    public function testAddEventSubscriber()
-    {
-        $eventSubscriber = new TestEventSubscriber();
-        $this->_eventManager->addEventSubscriber($eventSubscriber);
-        $this->assertTrue($this->_eventManager->hasListeners(self::preFoo));
-        $this->assertTrue($this->_eventManager->hasListeners(self::postFoo));
-    }
-
-    /* Listener methods */
-
-    public function preFoo(EventArgs $e)
-    {
-        $this->_preFooInvoked = true;
-    }
-
-    public function postFoo(EventArgs $e)
-    {
-        $this->_postFooInvoked = true;
-    }
-}
-
-class TestEventSubscriber implements \Doctrine\Common\EventSubscriber
-{
-    public function getSubscribedEvents()
-    {
-        return array('preFoo', 'postFoo');
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/ChainDriverTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/ChainDriverTest.php
deleted file mode 100644
index f9edd10..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/ChainDriverTest.php
+++ /dev/null
@@ -1,152 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Common\Persistence\Mapping\Driver\MappingDriverChain;
-use Doctrine\Tests\DoctrineTestCase;
-
-class DriverChainTest extends DoctrineTestCase
-{
-    public function testDelegateToMatchingNamespaceDriver()
-    {
-        $className = 'Doctrine\Tests\Common\Persistence\Mapping\DriverChainEntity';
-        $classMetadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-
-        $chain = new MappingDriverChain();
-
-        $driver1 = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $driver1->expects($this->never())
-                ->method('loadMetadataForClass');
-        $driver1->expectS($this->never())
-                ->method('isTransient');
-
-        $driver2 = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $driver2->expects($this->at(0))
-                ->method('loadMetadataForClass')
-                ->with($this->equalTo($className), $this->equalTo($classMetadata));
-        $driver2->expects($this->at(1))
-                ->method('isTransient')
-                ->with($this->equalTo($className))
-                ->will($this->returnValue( true ));
-
-        $chain->addDriver($driver1, 'Doctrine\Tests\Models\Company');
-        $chain->addDriver($driver2, 'Doctrine\Tests\Common\Persistence\Mapping');
-
-        $chain->loadMetadataForClass($className, $classMetadata);
-
-        $this->assertTrue( $chain->isTransient($className) );
-    }
-
-    public function testLoadMetadata_NoDelegatorFound_ThrowsMappingException()
-    {
-        $className = 'Doctrine\Tests\Common\Persistence\Mapping\DriverChainEntity';
-        $classMetadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-
-        $chain = new MappingDriverChain();
-
-        $this->setExpectedException('Doctrine\Common\Persistence\Mapping\MappingException');
-        $chain->loadMetadataForClass($className, $classMetadata);
-    }
-
-    public function testGatherAllClassNames()
-    {
-        $className = 'Doctrine\Tests\Common\Persistence\Mapping\DriverChainEntity';
-        $classMetadata = $this->getMock('Doctrine\Common\Persistence\ClassMetadata');
-
-        $chain = new MappingDriverChain();
-
-        $driver1 = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $driver1->expects($this->once())
-                ->method('getAllClassNames')
-                ->will($this->returnValue(array('Doctrine\Tests\Models\Company\Foo')));
-
-        $driver2 = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $driver2->expects($this->once())
-                ->method('getAllClassNames')
-                ->will($this->returnValue(array('Doctrine\Tests\ORM\Mapping\Bar', 'Doctrine\Tests\ORM\Mapping\Baz', 'FooBarBaz')));
-
-        $chain->addDriver($driver1, 'Doctrine\Tests\Models\Company');
-        $chain->addDriver($driver2, 'Doctrine\Tests\ORM\Mapping');
-
-        $this->assertEquals(array(
-            'Doctrine\Tests\Models\Company\Foo',
-            'Doctrine\Tests\ORM\Mapping\Bar',
-            'Doctrine\Tests\ORM\Mapping\Baz'
-        ), $chain->getAllClassNames());
-    }
-
-    /**
-     * @group DDC-706
-     */
-    public function testIsTransient()
-    {
-        $driver1 = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $chain = new MappingDriverChain();
-        $chain->addDriver($driver1, 'Doctrine\Tests\Models\CMS');
-
-        $this->assertTrue($chain->isTransient('stdClass'), "stdClass isTransient");
-    }
-
-    /**
-     * @group DDC-1412
-     */
-    public function testDefaultDriver()
-    {
-        $companyDriver      = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $defaultDriver      = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $entityClassName    = 'Doctrine\Tests\ORM\Mapping\DriverChainEntity';
-        $managerClassName   = 'Doctrine\Tests\Models\Company\CompanyManager';
-        $chain              = new MappingDriverChain();
-
-        $companyDriver->expects($this->never())
-            ->method('loadMetadataForClass');
-        $companyDriver->expects($this->once())
-            ->method('isTransient')
-            ->with($this->equalTo($managerClassName))
-            ->will($this->returnValue(false));
-
-        $defaultDriver->expects($this->never())
-            ->method('loadMetadataForClass');
-        $defaultDriver->expects($this->once())
-            ->method('isTransient')
-            ->with($this->equalTo($entityClassName))
-            ->will($this->returnValue(true));
-
-        $this->assertNull($chain->getDefaultDriver());
-
-        $chain->setDefaultDriver($defaultDriver);
-        $chain->addDriver($companyDriver, 'Doctrine\Tests\Models\Company');
-
-        $this->assertSame($defaultDriver, $chain->getDefaultDriver());
-
-        $this->assertTrue($chain->isTransient($entityClassName));
-        $this->assertFalse($chain->isTransient($managerClassName));
-    }
-
-    public function testDefaultDriverGetAllClassNames()
-    {
-        $companyDriver = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $defaultDriver = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $chain         = new MappingDriverChain();
-
-        $companyDriver->expects($this->once())
-            ->method('getAllClassNames')
-            ->will($this->returnValue(array('Doctrine\Tests\Models\Company\Foo')));
-
-        $defaultDriver->expects($this->once())
-            ->method('getAllClassNames')
-            ->will($this->returnValue(array('Other\Class')));
-
-        $chain->setDefaultDriver($defaultDriver);
-        $chain->addDriver($companyDriver, 'Doctrine\Tests\Models\Company');
-
-        $classNames = $chain->getAllClassNames();
-
-        $this->assertEquals(array('Doctrine\Tests\Models\Company\Foo', 'Other\Class'), $classNames);
-    }
-}
-
-class DriverChainEntity
-{
-
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/ClassMetadataFactoryTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/ClassMetadataFactoryTest.php
deleted file mode 100644
index c5a457f..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/ClassMetadataFactoryTest.php
+++ /dev/null
@@ -1,145 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Persistence\Mapping\Driver\DefaultFileLocator;
-use Doctrine\Common\Persistence\Mapping\ReflectionService;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-use Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory;
-use Doctrine\Common\Cache\ArrayCache;
-
-class ClassMetadataFactoryTest extends DoctrineTestCase
-{
-    /**
-     * @var TestClassMetadataFactory
-     */
-    private $cmf;
-
-    public function setUp()
-    {
-        $driver = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\MappingDriver');
-        $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $this->cmf = new TestClassMetadataFactory($driver, $metadata);
-    }
-
-    public function testGetCacheDriver()
-    {
-        $this->assertNull($this->cmf->getCacheDriver());
-        $cache = new ArrayCache();
-        $this->cmf->setCacheDriver($cache);
-        $this->assertSame($cache, $this->cmf->getCacheDriver());
-    }
-
-    public function testGetMetadataFor()
-    {
-        $metadata = $this->cmf->getMetadataFor('stdClass');
-
-        $this->assertInstanceOf('Doctrine\Common\Persistence\Mapping\ClassMetadata', $metadata);
-        $this->assertTrue($this->cmf->hasMetadataFor('stdClass'));
-    }
-
-    public function testGetMetadataForAbsentClass()
-    {
-        $this->setExpectedException('Doctrine\Common\Persistence\Mapping\MappingException');
-        $this->cmf->getMetadataFor(__NAMESPACE__ . '\AbsentClass');
-    }
-
-    public function testGetParentMetadata()
-    {
-        $metadata = $this->cmf->getMetadataFor(__NAMESPACE__ . '\ChildEntity');
-
-        $this->assertInstanceOf('Doctrine\Common\Persistence\Mapping\ClassMetadata', $metadata);
-        $this->assertTrue($this->cmf->hasMetadataFor(__NAMESPACE__ . '\ChildEntity'));
-        $this->assertTrue($this->cmf->hasMetadataFor(__NAMESPACE__ . '\RootEntity'));
-    }
-
-    public function testGetCachedMetadata()
-    {
-        $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $cache = new ArrayCache();
-        $cache->save(__NAMESPACE__. '\ChildEntity$CLASSMETADATA', $metadata);
-
-        $this->cmf->setCacheDriver($cache);
-
-        $loadedMetadata = $this->cmf->getMetadataFor(__NAMESPACE__ . '\ChildEntity');
-        $this->assertSame($loadedMetadata, $metadata);
-    }
-
-    public function testCacheGetMetadataFor()
-    {
-        $cache = new ArrayCache();
-        $this->cmf->setCacheDriver($cache);
-
-        $loadedMetadata = $this->cmf->getMetadataFor(__NAMESPACE__ . '\ChildEntity');
-
-        $this->assertSame($loadedMetadata, $cache->fetch(__NAMESPACE__. '\ChildEntity$CLASSMETADATA'));
-    }
-
-    public function testGetAliasedMetadata()
-    {
-        $loadedMetadata = $this->cmf->getMetadataFor('prefix:ChildEntity');
-
-        $this->assertTrue($this->cmf->hasMetadataFor(__NAMESPACE__ . '\ChildEntity'));
-        $this->assertTrue($this->cmf->hasMetadataFor('prefix:ChildEntity'));
-    }
-}
-
-class TestClassMetadataFactory extends AbstractClassMetadataFactory
-{
-    public $driver;
-    public $metadata;
-
-    public function __construct($driver, $metadata)
-    {
-        $this->driver = $driver;
-        $this->metadata = $metadata;
-    }
-
-    protected function doLoadMetadata($class, $parent, $rootEntityFound, array $nonSuperclassParents)
-    {
-
-    }
-
-    protected function getFqcnFromAlias($namespaceAlias, $simpleClassName)
-    {
-        return __NAMESPACE__ . '\\' . $simpleClassName;
-    }
-
-    protected function initialize()
-    {
-
-    }
-
-    protected function newClassMetadataInstance($className)
-    {
-        return $this->metadata;
-    }
-
-    protected function getDriver()
-    {
-        return $this->driver;
-    }
-    protected function wakeupReflection(ClassMetadata $class, ReflectionService $reflService)
-    {
-    }
-
-    protected function initializeReflection(ClassMetadata $class, ReflectionService $reflService)
-    {
-    }
-
-    protected function isEntity(ClassMetadata $class)
-    {
-        return true;
-    }
-}
-
-class RootEntity
-{
-
-}
-
-class ChildEntity extends RootEntity
-{
-
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/DefaultFileLocatorTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/DefaultFileLocatorTest.php
deleted file mode 100644
index 37072de..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/DefaultFileLocatorTest.php
+++ /dev/null
@@ -1,90 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Persistence\Mapping\Driver\DefaultFileLocator;
-
-class DefaultFileLocatorTest extends DoctrineTestCase
-{
-    public function testGetPaths()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path));
-        $this->assertEquals(array($path), $locator->getPaths());
-
-        $locator = new DefaultFileLocator($path);
-        $this->assertEquals(array($path), $locator->getPaths());
-    }
-
-    public function testGetFileExtension()
-    {
-        $locator = new DefaultFileLocator(array(), ".yml");
-        $this->assertEquals(".yml", $locator->getFileExtension());
-        $locator->setFileExtension(".xml");
-        $this->assertEquals(".xml", $locator->getFileExtension());
-    }
-
-    public function testUniquePaths()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path, $path));
-        $this->assertEquals(array($path), $locator->getPaths());
-    }
-
-    public function testFindMappingFile()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path), ".yml");
-
-        $this->assertEquals(__DIR__ . '/_files' . DIRECTORY_SEPARATOR . 'stdClass.yml', $locator->findMappingFile('stdClass'));
-    }
-
-    public function testFindMappingFileNotFound()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path), ".yml");
-
-        $this->setExpectedException(
-            'Doctrine\Common\Persistence\Mapping\MappingException',
-            "No mapping file found named 'stdClass2.yml' for class 'stdClass2'"
-        );
-        $locator->findMappingFile('stdClass2');
-    }
-
-    public function testGetAllClassNames()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path), ".yml");
-        $classes = $locator->getAllClassNames(null);
-        sort($classes);
-
-        $this->assertEquals(array('global', 'stdClass'), $classes);
-        $this->assertEquals(array('stdClass'), $locator->getAllClassNames("global"));
-    }
-
-    public function testGetAllClassNamesNonMatchingFileExtension()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path), ".xml");
-        $this->assertEquals(array(), $locator->getAllClassNames("global"));
-    }
-
-    public function testFileExists()
-    {
-        $path = __DIR__ . "/_files";
-
-        $locator = new DefaultFileLocator(array($path), ".yml");
-
-        $this->assertTrue($locator->fileExists("stdClass"));
-        $this->assertFalse($locator->fileExists("stdClass2"));
-        $this->assertTrue($locator->fileExists("global"));
-        $this->assertFalse($locator->fileExists("global2"));
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/FileDriverTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/FileDriverTest.php
deleted file mode 100644
index 020c242..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/FileDriverTest.php
+++ /dev/null
@@ -1,142 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Persistence\Mapping\Driver\FileDriver;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-
-class FileDriverTest extends DoctrineTestCase
-{
-    public function testGlobalBasename()
-    {
-        $driver = new TestFileDriver(array());
-
-        $this->assertNull($driver->getGlobalBasename());
-
-        $driver->setGlobalBasename("global");
-        $this->assertEquals("global", $driver->getGlobalBasename());
-    }
-
-    public function testGetElementFromGlobalFile()
-    {
-        $driver = new TestFileDriver($this->newLocator());
-        $driver->setGlobalBasename("global");
-
-        $element = $driver->getElement('stdGlobal');
-
-        $this->assertEquals('stdGlobal', $element);
-    }
-
-    public function testGetElementFromFile()
-    {
-        $locator = $this->newLocator();
-        $locator->expects($this->once())
-                ->method('findMappingFile')
-                ->with($this->equalTo('stdClass'))
-                ->will($this->returnValue(__DIR__ . '/_files/stdClass.yml'));
-
-        $driver = new TestFileDriver($locator);
-
-        $this->assertEquals('stdClass', $driver->getElement('stdClass'));
-    }
-
-    public function testGetAllClassNamesGlobalBasename()
-    {
-        $driver = new TestFileDriver($this->newLocator());
-        $driver->setGlobalBasename("global");
-
-        $classNames = $driver->getAllClassNames();
-
-        $this->assertEquals(array('stdGlobal', 'stdGlobal2'), $classNames);
-    }
-
-    public function testGetAllClassNamesFromMappingFile()
-    {
-        $locator = $this->newLocator();
-        $locator->expects($this->any())
-                ->method('getAllClassNames')
-                ->with($this->equalTo(null))
-                ->will($this->returnValue(array('stdClass')));
-        $driver = new TestFileDriver($locator);
-
-        $classNames = $driver->getAllClassNames();
-
-        $this->assertEquals(array('stdClass'), $classNames);
-    }
-
-    public function testGetAllClassNamesBothSources()
-    {
-        $locator = $this->newLocator();
-        $locator->expects($this->any())
-                ->method('getAllClassNames')
-                ->with($this->equalTo('global'))
-                ->will($this->returnValue(array('stdClass')));
-        $driver = new TestFileDriver($locator);
-        $driver->setGlobalBasename("global");
-
-        $classNames = $driver->getAllClassNames();
-
-        $this->assertEquals(array('stdGlobal', 'stdGlobal2', 'stdClass'), $classNames);
-    }
-
-    public function testIsNotTransient()
-    {
-        $locator = $this->newLocator();
-        $locator->expects($this->once())
-                ->method('fileExists')
-                ->with($this->equalTo('stdClass'))
-                ->will($this->returnValue( true ));
-
-        $driver = new TestFileDriver($locator);
-        $driver->setGlobalBasename("global");
-
-        $this->assertFalse($driver->isTransient('stdClass'));
-        $this->assertFalse($driver->isTransient('stdGlobal'));
-        $this->assertFalse($driver->isTransient('stdGlobal2'));
-    }
-
-    public function testIsTransient()
-    {
-        $locator = $this->newLocator();
-        $locator->expects($this->once())
-                ->method('fileExists')
-                ->with($this->equalTo('stdClass2'))
-                ->will($this->returnValue( false ));
-
-        $driver = new TestFileDriver($locator);
-
-        $this->assertTrue($driver->isTransient('stdClass2'));
-    }
-
-    public function testNonLocatorFallback()
-    {
-        $driver = new TestFileDriver(__DIR__ . '/_files', '.yml');
-        $this->assertTrue($driver->isTransient('stdClass2'));
-        $this->assertFalse($driver->isTransient('stdClass'));
-    }
-
-    private function newLocator()
-    {
-        $locator = $this->getMock('Doctrine\Common\Persistence\Mapping\Driver\FileLocator');
-        $locator->expects($this->any())->method('getFileExtension')->will($this->returnValue('.yml'));
-        $locator->expects($this->any())->method('getPaths')->will($this->returnValue(array(__DIR__ . "/_files")));
-        return $locator;
-    }
-}
-
-class TestFileDriver extends FileDriver
-{
-    protected function loadMappingFile($file)
-    {
-        if (strpos($file, "global.yml") !== false) {
-            return array('stdGlobal' => 'stdGlobal', 'stdGlobal2' => 'stdGlobal2');
-        }
-        return array('stdClass' => 'stdClass');
-    }
-
-    public function loadMetadataForClass($className, ClassMetadata $metadata)
-    {
-
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/PHPDriverTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/PHPDriverTest.php
deleted file mode 100644
index 8fc4d80..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/PHPDriverTest.php
+++ /dev/null
@@ -1,18 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Persistence\Mapping\Driver\PHPDriver;
-
-class PHPDriverTest extends DoctrineTestCase
-{
-    public function testLoadMetadata()
-    {
-        $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $metadata->expects($this->once())->method('getFieldNames');
-
-        $driver = new PHPDriver(array(__DIR__ . "/_files"));
-        $driver->loadMetadataForClass('TestEntity', $metadata);
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/RuntimeReflectionServiceTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/RuntimeReflectionServiceTest.php
deleted file mode 100644
index 767ccd6..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/RuntimeReflectionServiceTest.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Common\Persistence\Mapping\RuntimeReflectionService;
-
-/**
- * @group DCOM-93
- */
-class RuntimeReflectionServiceTest extends \PHPUnit_Framework_TestCase
-{
-    /**
-     * @var RuntimeReflectionService
-     */
-    private $reflectionService;
-
-    public $unusedPublicProperty;
-
-    public function setUp()
-    {
-        $this->reflectionService = new RuntimeReflectionService();
-    }
-
-    public function testShortname()
-    {
-        $this->assertEquals("RuntimeReflectionServiceTest", $this->reflectionService->getClassShortName(__CLASS__));
-    }
-
-    public function testClassNamespaceName()
-    {
-        $this->assertEquals("Doctrine\Tests\Common\Persistence\Mapping", $this->reflectionService->getClassNamespace(__CLASS__));
-    }
-
-    public function testGetParentClasses()
-    {
-        $classes = $this->reflectionService->getParentClasses(__CLASS__);
-        $this->assertTrue(count($classes) >= 1, "The test class ".__CLASS__." should have at least one parent.");
-    }
-
-    public function testGetParentClassesForAbsentClass()
-    {
-        $this->setExpectedException('Doctrine\Common\Persistence\Mapping\MappingException');
-        $this->reflectionService->getParentClasses(__NAMESPACE__ . '\AbsentClass');
-    }
-
-    public function testGetReflectionClass()
-    {
-        $class = $this->reflectionService->getClass(__CLASS__);
-        $this->assertInstanceOf("ReflectionClass", $class);
-    }
-
-    public function testGetMethods()
-    {
-        $this->assertTrue($this->reflectionService->hasPublicMethod(__CLASS__, "testGetMethods"));
-        $this->assertFalse($this->reflectionService->hasPublicMethod(__CLASS__, "testGetMethods2"));
-    }
-
-    public function testGetAccessibleProperty()
-    {
-        $reflProp = $this->reflectionService->getAccessibleProperty(__CLASS__, "reflectionService");
-        $this->assertInstanceOf("ReflectionProperty", $reflProp);
-
-        $reflProp = $this->reflectionService->getAccessibleProperty(__CLASS__, "unusedPublicProperty");
-        $this->assertInstanceOf("Doctrine\Common\Reflection\RuntimePublicReflectionProperty", $reflProp);
-    }
-}
-
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticPHPDriverTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticPHPDriverTest.php
deleted file mode 100644
index 9f1c568..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticPHPDriverTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Persistence\Mapping\Driver\StaticPHPDriver;
-
-class StaticPHPDriverTest extends DoctrineTestCase
-{
-    public function testLoadMetadata()
-    {
-        $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $metadata->expects($this->once())->method('getFieldNames');
-
-        $driver = new StaticPHPDriver(array(__DIR__));
-        $driver->loadMetadataForClass(__NAMESPACE__ . '\\TestEntity', $metadata);
-    }
-
-    public function testGetAllClassNames()
-    {
-        $driver = new StaticPHPDriver(array(__DIR__));
-        $classNames = $driver->getAllClassNames();
-
-        $this->assertContains(
-            'Doctrine\Tests\Common\Persistence\Mapping\TestEntity', $classNames);
-    }
-}
-
-class TestEntity
-{
-    static public function loadMetadata($metadata)
-    {
-        $metadata->getFieldNames();
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticReflectionServiceTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticReflectionServiceTest.php
deleted file mode 100644
index 1dd7a7a..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/StaticReflectionServiceTest.php
+++ /dev/null
@@ -1,70 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Common\Persistence\Mapping\StaticReflectionService;
-
-/**
- * @group DCOM-93
- */
-class StaticReflectionServiceTest extends \PHPUnit_Framework_TestCase
-{
-    private $reflectionService;
-
-    public function setUp()
-    {
-        $this->reflectionService = new StaticReflectionService();
-    }
-
-    public function testShortname()
-    {
-        $this->assertEquals("StaticReflectionServiceTest", $this->reflectionService->getClassShortName(__CLASS__));
-    }
-
-    public function testClassNamespaceName()
-    {
-        $this->assertEquals("Doctrine\Tests\Common\Persistence\Mapping", $this->reflectionService->getClassNamespace(__CLASS__));
-    }
-
-    public function testGetParentClasses()
-    {
-        $classes = $this->reflectionService->getParentClasses(__CLASS__);
-        $this->assertTrue(count($classes) == 0, "The test class ".__CLASS__." should have no parents according to static reflection.");
-    }
-
-    public function testGetReflectionClass()
-    {
-        $class = $this->reflectionService->getClass(__CLASS__);
-        $this->assertNull($class);
-    }
-
-    public function testGetMethods()
-    {
-        $this->assertTrue($this->reflectionService->hasPublicMethod(__CLASS__, "testGetMethods"));
-        $this->assertFalse($this->reflectionService->hasPublicMethod(__CLASS__, "testGetMethods2"));
-    }
-
-    public function testGetAccessibleProperty()
-    {
-        $reflProp = $this->reflectionService->getAccessibleProperty(__CLASS__, "reflectionService");
-        $this->assertNull($reflProp);
-    }
-}
-
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/SymfonyFileLocatorTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/SymfonyFileLocatorTest.php
deleted file mode 100644
index b51162e..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/SymfonyFileLocatorTest.php
+++ /dev/null
@@ -1,88 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence\Mapping;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Persistence\Mapping\Driver\SymfonyFileLocator;
-
-class SymfonyFileLocatorTest extends DoctrineTestCase
-{
-    public function testGetPaths()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix));
-        $this->assertEquals(array($path), $locator->getPaths());
-
-        $locator = new SymfonyFileLocator(array($path => $prefix));
-        $this->assertEquals(array($path), $locator->getPaths());
-    }
-
-    public function testGetPrefixes()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix));
-        $this->assertEquals(array($path => $prefix), $locator->getNamespacePrefixes());
-    }
-
-    public function testGetFileExtension()
-    {
-        $locator = new SymfonyFileLocator(array(), ".yml");
-        $this->assertEquals(".yml", $locator->getFileExtension());
-        $locator->setFileExtension(".xml");
-        $this->assertEquals(".xml", $locator->getFileExtension());
-    }
-
-    public function testFileExists()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix), ".yml");
-
-        $this->assertTrue($locator->fileExists("Foo\stdClass"));
-        $this->assertTrue($locator->fileExists("Foo\global"));
-        $this->assertFalse($locator->fileExists("Foo\stdClass2"));
-        $this->assertFalse($locator->fileExists("Foo\global2"));
-    }
-
-    public function testGetAllClassNames()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix), ".yml");
-        $classes = $locator->getAllClassNames(null);
-        sort($classes);
-
-        $this->assertEquals(array("Foo\\global", "Foo\\stdClass"), $classes);
-        $this->assertEquals(array("Foo\\stdClass"), $locator->getAllClassNames("global"));
-    }
-
-    public function testFindMappingFile()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix), ".yml");
-
-        $this->assertEquals(__DIR__ . "/_files/stdClass.yml", $locator->findMappingFile("Foo\\stdClass"));
-    }
-
-    public function testFindMappingFileNotFound()
-    {
-        $path = __DIR__ . "/_files";
-        $prefix = "Foo";
-
-        $locator = new SymfonyFileLocator(array($path => $prefix), ".yml");
-
-        $this->setExpectedException(
-            "Doctrine\Common\Persistence\Mapping\MappingException",
-            "No mapping file found named '".__DIR__."/_files/stdClass2.yml' for class 'Foo\stdClass2'."
-        );
-        $locator->findMappingFile("Foo\\stdClass2");
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/TestEntity.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/TestEntity.php
deleted file mode 100644
index d0e9976..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/TestEntity.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-
-$metadata->getFieldNames();
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/global.yml b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/global.yml
deleted file mode 100644
index 30d74d2..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/global.yml
+++ /dev/null
@@ -1 +0,0 @@
-test
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/stdClass.yml b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/stdClass.yml
deleted file mode 100644
index 30d74d2..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/Mapping/_files/stdClass.yml
+++ /dev/null
@@ -1 +0,0 @@
-test
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/ObjectManagerDecoratorTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/ObjectManagerDecoratorTest.php
deleted file mode 100644
index 768b4d3..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/ObjectManagerDecoratorTest.php
+++ /dev/null
@@ -1,60 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence;
-
-use Doctrine\Common\Persistence\ObjectManagerDecorator;
-use Doctrine\Common\Persistence\ObjectManager;
-
-class NullObjectManagerDecorator extends ObjectManagerDecorator
-{
-    public function __construct(ObjectManager $wrapped)
-    {
-        $this->wrapped = $wrapped;
-    }
-}
-
-class ObjectManagerDecoratorTest extends \PHPUnit_Framework_TestCase
-{
-    private $wrapped;
-    private $decorated;
-
-    public function setUp()
-    {
-        $this->wrapped = $this->getMock('Doctrine\Common\Persistence\ObjectManager');
-        $this->decorated = new NullObjectManagerDecorator($this->wrapped);
-    }
-
-    public function getMethodParameters()
-    {
-        $class = new \ReflectionClass('Doctrine\Common\Persistence\ObjectManager');
-
-        $methods = array();
-        foreach ($class->getMethods() as $method) {
-            if ($method->getNumberOfRequiredParameters() === 0) {
-               $methods[] = array($method->getName(), array());
-            } elseif ($method->getNumberOfRequiredParameters() > 0) {
-                $methods[] = array($method->getName(), array_fill(0, $method->getNumberOfRequiredParameters(), 'req') ?: array());
-            }
-            if ($method->getNumberOfParameters() != $method->getNumberOfRequiredParameters()) {
-                $methods[] = array($method->getName(), array_fill(0, $method->getNumberOfParameters(), 'all') ?: array());
-            }
-        }
-
-        return $methods;
-    }
-
-    /**
-     * @dataProvider getMethodParameters
-     */
-    public function testAllMethodCallsAreDelegatedToTheWrappedInstance($method, array $parameters)
-    {
-        $stub = $this->wrapped
-            ->expects($this->once())
-            ->method($method)
-            ->will($this->returnValue('INNER VALUE FROM ' . $method));
-
-        call_user_func_array(array($stub, 'with'), $parameters);
-
-        $this->assertSame('INNER VALUE FROM ' . $method, call_user_func_array(array($this->decorated, $method), $parameters));
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/PersistentObjectTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/PersistentObjectTest.php
deleted file mode 100644
index 180d0f0..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Persistence/PersistentObjectTest.php
+++ /dev/null
@@ -1,247 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Persistence;
-
-use Doctrine\Common\Persistence\PersistentObject;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-use Doctrine\Common\Persistence\Mapping\ReflectionService;
-
-/**
- * @group DDC-1448
- */
-class PersistentObjectTest extends \Doctrine\Tests\DoctrineTestCase
-{
-    private $cm;
-    private $om;
-    private $object;
-
-    public function setUp()
-    {
-        $this->cm = new TestObjectMetadata;
-        $this->om = $this->getMock('Doctrine\Common\Persistence\ObjectManager');
-        $this->om->expects($this->any())->method('getClassMetadata')
-                 ->will($this->returnValue($this->cm));
-        $this->object = new TestObject;
-        PersistentObject::setObjectManager($this->om);
-        $this->object->injectObjectManager($this->om, $this->cm);
-    }
-
-    public function testGetObjectManager()
-    {
-        $this->assertSame($this->om, PersistentObject::getObjectManager());
-    }
-
-    public function testNonMatchingObjectManager()
-    {
-        $this->setExpectedException('RuntimeException');
-        $om = $this->getMock('Doctrine\Common\Persistence\ObjectManager');
-        $this->object->injectObjectManager($om, $this->cm);
-    }
-
-    public function testGetField()
-    {
-        $this->assertEquals('beberlei', $this->object->getName());
-    }
-
-    public function testSetField()
-    {
-        $this->object->setName("test");
-        $this->assertEquals("test", $this->object->getName());
-    }
-
-    public function testGetIdentifier()
-    {
-        $this->assertEquals(1, $this->object->getId());
-    }
-
-    public function testSetIdentifier()
-    {
-        $this->setExpectedException('BadMethodCallException');
-        $this->object->setId(2);
-    }
-
-    public function testSetUnknownField()
-    {
-        $this->setExpectedException('BadMethodCallException');
-        $this->object->setUnknown("test");
-    }
-
-    public function testGetUnknownField()
-    {
-        $this->setExpectedException('BadMethodCallException');
-        $this->object->getUnknown();
-    }
-
-    public function testGetToOneAssociation()
-    {
-        $this->assertNull($this->object->getParent());
-    }
-
-    public function testSetToOneAssociation()
-    {
-        $parent = new TestObject();
-        $this->object->setParent($parent);
-        $this->assertSame($parent, $this->object->getParent($parent));
-    }
-
-    public function testSetInvalidToOneAssociation()
-    {
-        $parent = new \stdClass();
-
-        $this->setExpectedException('InvalidArgumentException');
-        $this->object->setParent($parent);
-    }
-
-    public function testSetToOneAssociationNull()
-    {
-        $parent = new TestObject();
-        $this->object->setParent($parent);
-        $this->object->setParent(null);
-        $this->assertNull($this->object->getParent());
-    }
-
-    public function testAddToManyAssociation()
-    {
-        $child = new TestObject();
-        $this->object->addChildren($child);
-
-        $this->assertSame($this->object, $child->getParent());
-        $this->assertEquals(1, count($this->object->getChildren()));
-
-        $child = new TestObject();
-        $this->object->addChildren($child);
-
-        $this->assertEquals(2, count($this->object->getChildren()));
-    }
-
-    public function testAddInvalidToManyAssociation()
-    {
-        $this->setExpectedException('InvalidArgumentException');
-        $this->object->addChildren(new \stdClass());
-    }
-
-    public function testNoObjectManagerSet()
-    {
-        PersistentObject::setObjectManager(null);
-        $child = new TestObject();
-
-        $this->setExpectedException('RuntimeException');
-        $child->setName("test");
-    }
-
-    public function testInvalidMethod()
-    {
-        $this->setExpectedException('BadMethodCallException');
-        $this->object->asdf();
-    }
-
-    public function testAddInvalidCollection()
-    {
-        $this->setExpectedException('BadMethodCallException');
-        $this->object->addAsdf(new \stdClass());
-    }
-}
-
-class TestObject extends PersistentObject
-{
-    protected $id = 1;
-    protected $name = 'beberlei';
-    protected $parent;
-    protected $children;
-}
-
-class TestObjectMetadata implements ClassMetadata
-{
-
-    public function getAssociationMappedByTargetField($assocName)
-    {
-        $assoc = array('children' => 'parent');
-        return $assoc[$assocName];
-    }
-
-    public function getAssociationNames()
-    {
-        return array('parent', 'children');
-    }
-
-    public function getAssociationTargetClass($assocName)
-    {
-        return __NAMESPACE__ . '\TestObject';
-    }
-
-    public function getFieldNames()
-    {
-        return array('id', 'name');
-    }
-
-    public function getIdentifier()
-    {
-        return array('id');
-    }
-
-    public function getName()
-    {
-        return __NAMESPACE__ . '\TestObject';
-    }
-
-    public function getReflectionClass()
-    {
-        return new \ReflectionClass($this->getName());
-    }
-
-    public function getTypeOfField($fieldName)
-    {
-        $types = array('id' => 'integer', 'name' => 'string');
-        return $types[$fieldName];
-    }
-
-    public function hasAssociation($fieldName)
-    {
-        return in_array($fieldName, array('parent', 'children'));
-    }
-
-    public function hasField($fieldName)
-    {
-        return in_array($fieldName, array('id', 'name'));
-    }
-
-    public function isAssociationInverseSide($assocName)
-    {
-        return ($assocName === 'children');
-    }
-
-    public function isCollectionValuedAssociation($fieldName)
-    {
-        return ($fieldName === 'children');
-    }
-
-    public function isIdentifier($fieldName)
-    {
-        return $fieldName === 'id';
-    }
-
-    public function isSingleValuedAssociation($fieldName)
-    {
-        return $fieldName === 'parent';
-    }
-
-    public function getIdentifierValues($entity)
-    {
-
-    }
-
-    public function getIdentifierFieldNames()
-    {
-
-    }
-
-    public function initializeReflection(ReflectionService $reflService)
-    {
-
-    }
-
-    public function wakeupReflection(ReflectionService $reflService)
-    {
-
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/AbstractProxyFactoryTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/AbstractProxyFactoryTest.php
deleted file mode 100644
index 8aa966d..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/AbstractProxyFactoryTest.php
+++ /dev/null
@@ -1,118 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Proxy\ProxyDefinition;
-
-class AbstractProxyFactoryTest extends DoctrineTestCase
-{
-    public function testGenerateProxyClasses()
-    {
-        $metadata       = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $proxyGenerator = $this->getMock('Doctrine\Common\Proxy\ProxyGenerator', array(), array(), '', false);
-
-        $proxyGenerator
-            ->expects($this->once())
-            ->method('getProxyFileName');
-        $proxyGenerator
-            ->expects($this->once())
-            ->method('generateProxyClass');
-
-        $metadataFactory = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadataFactory');
-        $proxyFactory    = $this->getMockForAbstractClass(
-            'Doctrine\Common\Proxy\AbstractProxyFactory',
-            array($proxyGenerator, $metadataFactory, true)
-        );
-
-        $proxyFactory
-            ->expects($this->any())
-            ->method('skipClass')
-            ->will($this->returnValue(false));
-
-        $generated = $proxyFactory->generateProxyClasses(array($metadata), sys_get_temp_dir());
-
-        $this->assertEquals(1, $generated, 'One proxy was generated');
-    }
-
-    public function testGetProxy()
-    {
-        $metadata        = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $proxy           = $this->getMock('Doctrine\Common\Proxy\Proxy');
-        $definition      = new ProxyDefinition(get_class($proxy), array(), array(), null, null);
-        $proxyGenerator  = $this->getMock('Doctrine\Common\Proxy\ProxyGenerator', array(), array(), '', false);
-        $metadataFactory = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadataFactory');
-
-        $metadataFactory
-            ->expects($this->once())
-            ->method('getMetadataFor')
-            ->will($this->returnValue($metadata));
-
-        $proxyFactory = $this->getMockForAbstractClass(
-            'Doctrine\Common\Proxy\AbstractProxyFactory',
-            array($proxyGenerator, $metadataFactory, true)
-        );
-
-        $proxyFactory
-            ->expects($this->any())
-            ->method('createProxyDefinition')
-            ->will($this->returnValue($definition));
-
-        $generatedProxy = $proxyFactory->getProxy('Class', array('id' => 1));
-
-        $this->assertInstanceOf(get_class($proxy), $generatedProxy);
-    }
-
-    public function testResetUnitializedProxy()
-    {
-        $metadata        = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $proxy           = $this->getMock('Doctrine\Common\Proxy\Proxy');
-        $definition      = new ProxyDefinition(get_class($proxy), array(), array(), null, null);
-        $proxyGenerator  = $this->getMock('Doctrine\Common\Proxy\ProxyGenerator', array(), array(), '', false);
-        $metadataFactory = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadataFactory');
-
-        $metadataFactory
-            ->expects($this->once())
-            ->method('getMetadataFor')
-            ->will($this->returnValue($metadata));
-
-        $proxyFactory = $this->getMockForAbstractClass(
-            'Doctrine\Common\Proxy\AbstractProxyFactory',
-            array($proxyGenerator, $metadataFactory, true)
-        );
-
-        $proxyFactory
-            ->expects($this->any())
-            ->method('createProxyDefinition')
-            ->will($this->returnValue($definition));
-
-        $proxy
-            ->expects($this->once())
-            ->method('__isInitialized')
-            ->will($this->returnValue(false));
-        $proxy
-            ->expects($this->once())
-            ->method('__setInitializer');
-        $proxy
-            ->expects($this->once())
-            ->method('__setCloner');
-
-        $proxyFactory->resetUninitializedProxy($proxy);
-    }
-
-    public function testDisallowsResettingInitializedProxy()
-    {
-        $proxyFactory = $this->getMockForAbstractClass('Doctrine\Common\Proxy\AbstractProxyFactory',  array(), '', false);
-        $proxy        = $this->getMock('Doctrine\Common\Proxy\Proxy');
-
-        $proxy
-            ->expects($this->any())
-            ->method('__isInitialized')
-            ->will($this->returnValue(true));
-
-        $this->setExpectedException('Doctrine\Common\Proxy\Exception\InvalidArgumentException');
-
-        $proxyFactory->resetUninitializedProxy($proxy);
-    }
-}
-
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/AutoloaderTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/AutoloaderTest.php
deleted file mode 100644
index be713fc..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/AutoloaderTest.php
+++ /dev/null
@@ -1,72 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use PHPUnit_Framework_TestCase;
-use Doctrine\Common\Proxy\Autoloader;
-
-/**
- * @group DDC-1698
- */
-class AutoloaderTest extends PHPUnit_Framework_TestCase
-{
-    public static function dataResolveFile()
-    {
-        return array(
-            array('/tmp', 'MyProxy', 'MyProxy\__CG__\RealClass', '/tmp' . DIRECTORY_SEPARATOR . '__CG__RealClass.php'),
-            array('/tmp', 'MyProxy\Subdir', 'MyProxy\Subdir\__CG__\RealClass', '/tmp' . DIRECTORY_SEPARATOR . '__CG__RealClass.php'),
-            array('/tmp', 'MyProxy', 'MyProxy\__CG__\Other\RealClass', '/tmp' . DIRECTORY_SEPARATOR . '__CG__OtherRealClass.php'),
-        );
-    }
-
-    /**
-     * @dataProvider dataResolveFile
-     */
-    public function testResolveFile($proxyDir, $proxyNamespace, $className, $expectedProxyFile)
-    {
-        $actualProxyFile = Autoloader::resolveFile($proxyDir, $proxyNamespace, $className);
-        $this->assertEquals($expectedProxyFile, $actualProxyFile);
-    }
-
-    public function testAutoload()
-    {
-        if (file_exists(sys_get_temp_dir() ."/AutoloaderTestClass.php")) {
-            unlink(sys_get_temp_dir() ."/AutoloaderTestClass.php");
-        }
-
-        $autoloader = Autoloader::register(sys_get_temp_dir(), 'ProxyAutoloaderTest', function($proxyDir, $proxyNamespace, $className) {
-            file_put_contents(sys_get_temp_dir() . "/AutoloaderTestClass.php", "<?php namespace ProxyAutoloaderTest; class AutoloaderTestClass {} ");
-        });
-
-        $this->assertTrue(class_exists('ProxyAutoloaderTest\AutoloaderTestClass', true));
-        unlink(sys_get_temp_dir() ."/AutoloaderTestClass.php");
-    }
-
-    public function testRegisterWithInvalidCallback()
-    {
-        $this->setExpectedException(
-            'Doctrine\Common\Proxy\Exception\InvalidArgumentException',
-            'Invalid \$notFoundCallback given: must be a callable, "stdClass" given'
-        );
-
-        Autoloader::register('', '', new \stdClass());
-    }
-}
-
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/CallableTypeHintClass.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/CallableTypeHintClass.php
deleted file mode 100644
index f5fccb0..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/CallableTypeHintClass.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class CallableTypeHintClass
-{
-    /**
-     * @param callable $foo
-     */
-    public function call(callable $foo)
-    {
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/InvalidTypeHintClass.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/InvalidTypeHintClass.php
deleted file mode 100644
index bed55d2..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/InvalidTypeHintClass.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class InvalidTypeHintClass
-{
-    /**
-     * @param InvalidHint (non existing class type hint)
-     */
-    public function invalidTypeHintMethod(InvalidHint $foo)
-    {
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/LazyLoadableObject.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/LazyLoadableObject.php
deleted file mode 100644
index 6a4f2d5..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/LazyLoadableObject.php
+++ /dev/null
@@ -1,115 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset representing a lazy loadable object
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- * @since  2.4
- */
-class LazyLoadableObject
-{
-    /**
-     * @var string
-     */
-    public $publicIdentifierField;
-
-    /**
-     * @var string
-     */
-    protected $protectedIdentifierField;
-
-    /**
-     * @var string
-     */
-    public $publicTransientField            = 'publicTransientFieldValue';
-
-    /**
-     * @var string
-     */
-    protected $protectedTransientField      = 'protectedTransientFieldValue';
-
-    /**
-     * @var string
-     */
-    public $publicPersistentField           = 'publicPersistentFieldValue';
-
-    /**
-     * @var string
-     */
-    protected $protectedPersistentField     = 'protectedPersistentFieldValue';
-
-    /**
-     * @var string
-     */
-    public $publicAssociation               = 'publicAssociationValue';
-
-    /**
-     * @var string
-     */
-    protected $protectedAssociation         = 'protectedAssociationValue';
-
-    /**
-     * @return string
-     */
-    public function getProtectedIdentifierField()
-    {
-        return $this->protectedIdentifierField;
-    }
-
-    /**
-     * @return string
-     */
-    public function testInitializationTriggeringMethod()
-    {
-        return 'testInitializationTriggeringMethod';
-    }
-
-    /**
-     * @return string
-     */
-    public function getProtectedAssociation()
-    {
-        return $this->protectedAssociation;
-    }
-
-    /**
-     * @param \stdClass $param
-     */
-    public function publicTypeHintedMethod(\stdClass $param)
-    {
-    }
-
-    /**
-     *
-     */
-    public function &byRefMethod()
-    {
-    }
-
-    /**
-     * @param mixed $thisIsNotByRef
-     * @param &mixed $thisIsByRef
-     */
-    public function byRefParamMethod($thisIsNotByRef, &$thisIsByRef)
-    {
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/LazyLoadableObjectClassMetadata.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/LazyLoadableObjectClassMetadata.php
deleted file mode 100644
index 167386e..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/LazyLoadableObjectClassMetadata.php
+++ /dev/null
@@ -1,195 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use ReflectionClass;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-
-/**
- * Class metadata test asset for @see LazyLoadableObject
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- * @since  2.4
- */
-class LazyLoadableObjectClassMetadata implements ClassMetadata
-{
-    /**
-     * @var ReflectionClass
-     */
-    protected $reflectionClass;
-
-    /**
-     * @var array
-     */
-    protected $identifier = array(
-        'publicIdentifierField'    => true,
-        'protectedIdentifierField' => true,
-    );
-
-    /**
-     * @var array
-     */
-    protected $fields = array(
-        'publicIdentifierField'    => true,
-        'protectedIdentifierField' => true,
-        'publicPersistentField'    => true,
-        'protectedPersistentField' => true,
-    );
-
-    /**
-     * @var array
-     */
-    protected $associations = array(
-        'publicAssociation'        => true,
-        'protectedAssociation'     => true,
-    );
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getName()
-    {
-        return $this->getReflectionClass()->getName();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getIdentifier()
-    {
-        return array_keys($this->identifier);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getReflectionClass()
-    {
-        if (null === $this->reflectionClass) {
-            $this->reflectionClass = new \ReflectionClass(__NAMESPACE__ . '\LazyLoadableObject');
-        }
-
-        return $this->reflectionClass;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isIdentifier($fieldName)
-    {
-        return isset($this->identifier[$fieldName]);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function hasField($fieldName)
-    {
-        return isset($this->fields[$fieldName]);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function hasAssociation($fieldName)
-    {
-        return isset($this->associations[$fieldName]);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isSingleValuedAssociation($fieldName)
-    {
-        throw new \BadMethodCallException('not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isCollectionValuedAssociation($fieldName)
-    {
-        throw new \BadMethodCallException('not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getFieldNames()
-    {
-        return array_keys($this->fields);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getIdentifierFieldNames()
-    {
-        return $this->getIdentifier();
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAssociationNames()
-    {
-        return array_keys($this->associations);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getTypeOfField($fieldName)
-    {
-        return 'string';
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAssociationTargetClass($assocName)
-    {
-        throw new \BadMethodCallException('not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function isAssociationInverseSide($assocName)
-    {
-        throw new \BadMethodCallException('not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getAssociationMappedByTargetField($assocName)
-    {
-        throw new \BadMethodCallException('not implemented');
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function getIdentifierValues($object)
-    {
-        throw new \BadMethodCallException('not implemented');
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicCloneClass.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicCloneClass.php
deleted file mode 100644
index 33b983d..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicCloneClass.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class MagicCloneClass
-{
-    /**
-     * @var string
-     */
-    public $id = 'id';
-
-    /**
-     * @var string
-     */
-    public $publicField = 'publicField';
-
-    /**
-     * @var boolean
-     */
-    public $cloned = false;
-
-    /**
-     * @var string
-     */
-    public $clonedValue = 'defaultValue';
-
-    /**
-     * @return void
-     */
-    public function __clone()
-    {
-        $this->clonedValue = 'newClonedValue';
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicGetByRefClass.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicGetByRefClass.php
deleted file mode 100644
index 6adf1f5..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicGetByRefClass.php
+++ /dev/null
@@ -1,51 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use InvalidArgumentException;
-
-/**
- * Test asset class
- *
- * @since 2.4
- */
-class MagicGetByRefClass
-{
-    /**
-     * @var mixed
-     */
-    public $valueField;
-
-    /**
-     * @param string $name
-     *
-     * @return mixed
-     *
-     * @throws \InvalidArgumentException
-     */
-    public function & __get($name)
-    {
-        if ($name === 'value') {
-            return $this->valueField;
-        }
-
-        throw new InvalidArgumentException();
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicGetClass.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicGetClass.php
deleted file mode 100644
index 0cab36a..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicGetClass.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class MagicGetClass
-{
-    /**
-     * @var string
-     */
-    public $id = 'id';
-
-    /**
-     * @var string
-     */
-    public $publicField = 'publicField';
-
-    /**
-     * @param $name
-     *
-     * @return string
-     * @throws \BadMethodCallException
-     */
-    public function __get($name)
-    {
-        if ($name === 'test') {
-            return 'test';
-        }
-
-        if ($name === 'publicField' || $name === 'id') {
-            throw new \BadMethodCallException('Should never be called for "publicField" or "id"');
-        }
-
-        return 'not defined';
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicIssetClass.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicIssetClass.php
deleted file mode 100644
index cda8e21..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicIssetClass.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class MagicIssetClass
-{
-    /**
-     * @var string
-     */
-    public $id = 'id';
-
-    /**
-     * @var string
-     */
-    public $publicField = 'publicField';
-
-    /**
-     * @param string $name
-     *
-     * @return bool
-     * @throws \BadMethodCallException
-     */
-    public function __isset($name)
-    {
-        if ('test' === $name) {
-            return true;
-        }
-
-        if ('publicField' === $name || 'id' === $name) {
-            throw new \BadMethodCallException('Should never be called for "publicField" or "id"');
-        }
-
-        return false;
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicSetClass.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicSetClass.php
deleted file mode 100644
index fe73bc2..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicSetClass.php
+++ /dev/null
@@ -1,43 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class MagicSetClass
-{
-    /**
-     * @var string
-     */
-    public $id = 'id';
-
-    /**
-     * @var string
-     */
-    public $publicField = 'publicField';
-
-    /**
-     * @var string|null
-     */
-    public $testAttribute;
-
-    /**
-     * @param string $name
-     * @param mixed  $value
-     *
-     * @throws \BadMethodCallException
-     */
-    public function __set($name, $value)
-    {
-        if ($name === 'test') {
-            $this->testAttribute = $value;
-        }
-
-        if ($name === 'publicField' || $name === 'id') {
-            throw new \BadMethodCallException('Should never be called for "publicField" or "id"');
-        }
-
-        $this->testAttribute = $value;
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicSleepClass.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicSleepClass.php
deleted file mode 100644
index 3934a05..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicSleepClass.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class MagicSleepClass
-{
-    /**
-     * @var string
-     */
-    public $id = 'id';
-
-    /**
-     * @var string
-     */
-    public $publicField = 'publicField';
-
-    /**
-     * @var string
-     */
-    public $serializedField = 'defaultValue';
-
-    /**
-     * @var string
-     */
-    public $nonSerializedField = 'defaultValue';
-
-    /**
-     * @return array
-     */
-    public function __sleep()
-    {
-        return array('serializedField');
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicWakeupClass.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicWakeupClass.php
deleted file mode 100644
index 3f4d1ac..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/MagicWakeupClass.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class MagicWakeupClass
-{
-    /**
-     * @var string
-     */
-    public $id = 'id';
-
-    /**
-     * @var string
-     */
-    public $publicField = 'publicField';
-
-    /**
-     * @var string
-     */
-    public $wakeupValue = 'defaultValue';
-
-    /**
-     * @return void
-     */
-    public function __wakeup()
-    {
-        $this->wakeupValue = 'newWakeupValue';
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyClassGeneratorTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyClassGeneratorTest.php
deleted file mode 100644
index e0c21ee..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyClassGeneratorTest.php
+++ /dev/null
@@ -1,185 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use Doctrine\Common\Proxy\ProxyGenerator;
-use ReflectionClass;
-use ReflectionMethod;
-use PHPUnit_Framework_TestCase;
-
-/**
- * Test the proxy generator. Its work is generating on-the-fly subclasses of a given model, which implement the Proxy
- * pattern.
- *
- * @author Giorgio Sironi <piccoloprincipeazzurro@gmail.com>
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class ProxyClassGeneratorTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var string
-     */
-    protected $proxyClass = 'Doctrine\Tests\Common\ProxyProxy\__CG__\Doctrine\Tests\Common\Proxy\LazyLoadableObject';
-
-    /**
-     * @var LazyLoadableObjectClassMetadata
-     */
-    protected $metadata;
-
-    /**
-     * @var ProxyGenerator
-     */
-    protected $proxyGenerator;
-
-    /**
-     * {@inheritDoc}
-     */
-    protected function setUp()
-    {
-        $this->metadata       = new LazyLoadableObjectClassMetadata();
-        $this->proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-
-        if (class_exists($this->proxyClass, false)) {
-            return;
-        }
-
-        $this->proxyGenerator->generateProxyClass($this->metadata);
-        require_once $this->proxyGenerator->getProxyFileName($this->metadata->getName());
-    }
-
-    public function testReferenceProxyRespectsMethodsParametersTypeHinting()
-    {
-        $method = new ReflectionMethod($this->proxyClass, 'publicTypeHintedMethod');
-        $params = $method->getParameters();
-
-        $this->assertEquals(1, count($params));
-        $this->assertEquals('stdClass', $params[0]->getClass()->getName());
-    }
-
-    public function testProxyRespectsMethodsWhichReturnValuesByReference()
-    {
-        $method = new ReflectionMethod($this->proxyClass, 'byRefMethod');
-
-        $this->assertTrue($method->returnsReference());
-    }
-
-    public function testProxyRespectsByRefMethodParameters()
-    {
-        $method = new ReflectionMethod($this->proxyClass, 'byRefParamMethod');
-        $parameters = $method->getParameters();
-        $this->assertSame('thisIsNotByRef', $parameters[0]->getName());
-        $this->assertFalse($parameters[0]->isPassedByReference());
-        $this->assertSame('thisIsByRef', $parameters[1]->getName());
-        $this->assertTrue($parameters[1]->isPassedByReference());
-    }
-
-    public function testCreatesAssociationProxyAsSubclassOfTheOriginalOne()
-    {
-        $this->assertTrue(is_subclass_of($this->proxyClass, $this->metadata->getName()));
-    }
-
-    public function testNonNamespacedProxyGeneration()
-    {
-        $classCode = file_get_contents($this->proxyGenerator->getProxyFileName($this->metadata->getName()));
-
-        $this->assertNotContains("class LazyLoadableObject extends \\\\" . $this->metadata->getName(), $classCode);
-        $this->assertContains("class LazyLoadableObject extends \\" . $this->metadata->getName(), $classCode);
-    }
-
-    public function testClassWithSleepProxyGeneration()
-    {
-        if (!class_exists('Doctrine\Tests\Common\ProxyProxy\__CG__\SleepClass', false)) {
-            $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-            $reflClass = new ReflectionClass('Doctrine\Tests\Common\Proxy\SleepClass');
-            $metadata->expects($this->any())->method('getReflectionClass')->will($this->returnValue($reflClass));
-            $metadata->expects($this->any())->method('getIdentifierFieldNames')->will($this->returnValue(array('id')));
-            $metadata->expects($this->any())->method('getName')->will($this->returnValue($reflClass->getName()));
-            $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-            $proxyGenerator->generateProxyClass($metadata);
-            require_once $proxyGenerator->getProxyFileName($metadata->getName());
-        }
-
-        $classCode = file_get_contents(__DIR__ . '/generated/__CG__DoctrineTestsCommonProxySleepClass.php');
-        $this->assertEquals(1, substr_count($classCode, 'function __sleep'));
-        $this->assertEquals(1, substr_count($classCode, 'parent::__sleep()'));
-    }
-
-    public function testClassWithCallableTypeHintOnProxiedMethod()
-    {
-        if (PHP_VERSION_ID < 50400) {
-            $this->markTestSkipped('`callable` is only supported in PHP >=5.4.0');
-        }
-
-        if (!class_exists('Doctrine\Tests\Common\ProxyProxy\__CG__\CallableTypeHintClass', false)) {
-            $metadata       = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-            $reflClass      = new ReflectionClass('Doctrine\Tests\Common\Proxy\CallableTypeHintClass');
-            $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-
-            $metadata->expects($this->any())->method('getReflectionClass')->will($this->returnValue($reflClass));
-            $metadata->expects($this->any())->method('getIdentifierFieldNames')->will($this->returnValue(array('id')));
-            $metadata->expects($this->any())->method('getName')->will($this->returnValue($reflClass->getName()));
-
-            $proxyGenerator->generateProxyClass($metadata);
-            require_once $proxyGenerator->getProxyFileName($metadata->getName());
-        }
-
-        $classCode = file_get_contents(__DIR__ . '/generated/__CG__DoctrineTestsCommonProxyCallableTypeHintClass.php');
-
-        $this->assertEquals(1, substr_count($classCode, 'call(callable $foo)'));
-    }
-
-    public function testClassWithInvalidTypeHintOnProxiedMethod()
-    {
-        $className = 'Doctrine\Tests\Common\Proxy\InvalidTypeHintClass';
-        $metadata = $this->getMock('Doctrine\Common\Persistence\Mapping\ClassMetadata');
-        $reflClass = new ReflectionClass($className);
-        $metadata->expects($this->any())->method('getReflectionClass')->will($this->returnValue($reflClass));
-        $metadata->expects($this->any())->method('getIdentifierFieldNames')->will($this->returnValue(array()));
-        $metadata->expects($this->any())->method('getName')->will($this->returnValue($className));
-        $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-
-        $this->setExpectedException(
-            'Doctrine\Common\Proxy\Exception\UnexpectedValueException',
-            'The type hint of parameter "foo" in method "invalidTypeHintMethod"'
-                .' in class "' . $className . '" is invalid.'
-        );
-        $proxyGenerator->generateProxyClass($metadata);
-    }
-
-    public function testNoConfigDirThrowsException()
-    {
-        $this->setExpectedException('Doctrine\Common\Proxy\Exception\InvalidArgumentException');
-        new ProxyGenerator(null, null);
-    }
-
-    public function testNoNamespaceThrowsException()
-    {
-        $this->setExpectedException('Doctrine\Common\Proxy\Exception\InvalidArgumentException');
-        new ProxyGenerator(__DIR__ . '/generated', null);
-    }
-
-    public function testInvalidPlaceholderThrowsException()
-    {
-        $this->setExpectedException('Doctrine\Common\Proxy\Exception\InvalidArgumentException');
-        $generator = new ProxyGenerator(__DIR__ . '/generated', 'SomeNamespace');
-        $generator->setPlaceholder('<somePlaceholder>', array());
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyLogicTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyLogicTest.php
deleted file mode 100644
index 9a5173c..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyLogicTest.php
+++ /dev/null
@@ -1,696 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use Doctrine\Common\Proxy\ProxyGenerator;
-use Doctrine\Common\Proxy\Proxy;
-use Doctrine\Common\Proxy\Exception\UnexpectedValueException;
-use Doctrine\Common\Persistence\Mapping\ClassMetadata;
-use PHPUnit_Framework_TestCase;
-
-/**
- * Test the generated proxies behavior. These tests make assumptions about the structure of LazyLoadableObject
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class ProxyLogicTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \PHPUnit_Framework_MockObject_MockObject
-     */
-    protected $proxyLoader;
-
-    /**
-     * @var ClassMetadata
-     */
-    protected $lazyLoadableObjectMetadata;
-
-    /**
-     * @var LazyLoadableObject|Proxy
-     */
-    protected $lazyObject;
-
-    protected $identifier = array(
-        'publicIdentifierField' => 'publicIdentifierFieldValue',
-        'protectedIdentifierField' => 'protectedIdentifierFieldValue',
-    );
-
-    /**
-     * @var \PHPUnit_Framework_MockObject_MockObject|Callable
-     */
-    protected $initializerCallbackMock;
-
-    /**
-     * {@inheritDoc}
-     */
-    public function setUp()
-    {
-        $this->proxyLoader = $loader      = $this->getMock('stdClass', array('load'), array(), '', false);
-        $this->initializerCallbackMock    = $this->getMock('stdClass', array('__invoke'));
-        $identifier                       = $this->identifier;
-        $this->lazyLoadableObjectMetadata = $metadata = new LazyLoadableObjectClassMetadata();
-
-        // emulating what should happen in a proxy factory
-        $cloner = function (LazyLoadableObject $proxy) use ($loader, $identifier, $metadata) {
-            /* @var $proxy LazyLoadableObject|Proxy */
-            if ($proxy->__isInitialized()) {
-                return;
-            }
-
-            $proxy->__setInitialized(true);
-            $proxy->__setInitializer(null);
-            $original = $loader->load($identifier);
-
-            if (null === $original) {
-                throw new UnexpectedValueException();
-            }
-
-            foreach ($metadata->getReflectionClass()->getProperties() as $reflProperty) {
-                $propertyName = $reflProperty->getName();
-
-                if ($metadata->hasField($propertyName) || $metadata->hasAssociation($propertyName)) {
-                    $reflProperty->setAccessible(true);
-                    $reflProperty->setValue($proxy, $reflProperty->getValue($original));
-                }
-            }
-        };
-
-        $proxyClassName = 'Doctrine\Tests\Common\ProxyProxy\__CG__\Doctrine\Tests\Common\Proxy\LazyLoadableObject';
-
-        // creating the proxy class
-        if (!class_exists($proxyClassName, false)) {
-            $proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . 'Proxy', true);
-            $proxyGenerator->generateProxyClass($metadata);
-            require_once $proxyGenerator->getProxyFileName($metadata->getName());
-        }
-
-        $this->lazyObject = new $proxyClassName($this->getClosure($this->initializerCallbackMock), $cloner);
-
-        // setting identifiers in the proxy via reflection
-        foreach ($metadata->getIdentifierFieldNames() as $idField) {
-            $prop = $metadata->getReflectionClass()->getProperty($idField);
-            $prop->setAccessible(true);
-            $prop->setValue($this->lazyObject, $identifier[$idField]);
-        }
-
-        $this->assertFalse($this->lazyObject->__isInitialized());
-    }
-
-    public function testFetchingPublicIdentifierDoesNotCauseLazyLoading()
-    {
-        $this->configureInitializerMock(0);
-
-        $this->assertSame('publicIdentifierFieldValue', $this->lazyObject->publicIdentifierField);
-    }
-
-    public function testFetchingIdentifiersViaPublicGetterDoesNotCauseLazyLoading()
-    {
-        $this->configureInitializerMock(0);
-
-        $this->assertSame('protectedIdentifierFieldValue', $this->lazyObject->getProtectedIdentifierField());
-    }
-
-    public function testCallingMethodCausesLazyLoading()
-    {
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, 'testInitializationTriggeringMethod', array()),
-            function (Proxy $proxy) {
-                $proxy->__setInitializer(null);
-            }
-        );
-
-        $this->lazyObject->testInitializationTriggeringMethod();
-        $this->lazyObject->testInitializationTriggeringMethod();
-    }
-
-    public function testFetchingPublicFieldsCausesLazyLoading()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__get', array('publicPersistentField')),
-            function () use ($test) {
-                $test->setProxyValue('publicPersistentField', 'loadedValue');
-            }
-        );
-
-        $this->assertSame('loadedValue', $this->lazyObject->publicPersistentField);
-        $this->assertSame('loadedValue', $this->lazyObject->publicPersistentField);
-    }
-
-    public function testFetchingPublicAssociationCausesLazyLoading()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__get', array('publicAssociation')),
-            function () use ($test) {
-                $test->setProxyValue('publicAssociation', 'loadedAssociation');
-            }
-        );
-
-        $this->assertSame('loadedAssociation', $this->lazyObject->publicAssociation);
-        $this->assertSame('loadedAssociation', $this->lazyObject->publicAssociation);
-    }
-
-    public function testFetchingProtectedAssociationViaPublicGetterCausesLazyLoading()
-    {
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, 'getProtectedAssociation', array()),
-            function (Proxy $proxy) {
-                $proxy->__setInitializer(null);
-            }
-        );
-
-        $this->assertSame('protectedAssociationValue', $this->lazyObject->getProtectedAssociation());
-        $this->assertSame('protectedAssociationValue', $this->lazyObject->getProtectedAssociation());
-    }
-
-    public function testLazyLoadingTriggeredOnlyAtFirstPublicPropertyRead()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__get', array('publicPersistentField')),
-            function () use ($test) {
-                $test->setProxyValue('publicPersistentField', 'loadedValue');
-                $test->setProxyValue('publicAssociation', 'publicAssociationValue');
-            }
-        );
-
-        $this->assertSame('loadedValue', $this->lazyObject->publicPersistentField);
-        $this->assertSame('publicAssociationValue', $this->lazyObject->publicAssociation);
-    }
-
-    public function testNoticeWhenReadingNonExistentPublicProperties()
-    {
-        $this->configureInitializerMock(0);
-
-        $class = get_class($this->lazyObject);
-        $this->setExpectedException(
-            'PHPUnit_Framework_Error_Notice',
-            'Undefined property: ' . $class . '::$non_existing_property'
-        );
-
-        $this->lazyObject->non_existing_property;
-    }
-
-    public function testFalseWhenCheckingNonExistentProperty()
-    {
-        $this->configureInitializerMock(0);
-
-        $this->assertFalse(isset($this->lazyObject->non_existing_property));
-    }
-
-    public function testNoErrorWhenSettingNonExistentProperty()
-    {
-        $this->configureInitializerMock(0);
-
-        $this->lazyObject->non_existing_property = 'now has a value';
-        $this->assertSame('now has a value', $this->lazyObject->non_existing_property);
-    }
-
-    public function testCloningCallsClonerWithClonedObject()
-    {
-        $lazyObject = $this->lazyObject;
-        $test = $this;
-        $cb = $this->getMock('stdClass', array('cb'));
-        $cb
-            ->expects($this->once())
-            ->method('cb')
-            ->will($this->returnCallback(function (LazyLoadableObject $proxy) use ($lazyObject, $test) {
-                /* @var $proxy LazyLoadableObject|Proxy */
-                $test->assertNotSame($proxy, $lazyObject);
-                $proxy->__setInitializer(null);
-                $proxy->publicAssociation = 'clonedAssociation';
-            }));
-
-        $this->lazyObject->__setCloner($this->getClosure(array($cb, 'cb')));
-
-        $cloned = clone $this->lazyObject;
-        $this->assertSame('clonedAssociation', $cloned->publicAssociation);
-        $this->assertNotSame($cloned, $lazyObject, 'a clone of the lazy object is retrieved');
-    }
-
-    public function testFetchingTransientPropertiesWillNotTriggerLazyLoading()
-    {
-        $this->configureInitializerMock(0);
-
-        $this->assertSame(
-            'publicTransientFieldValue',
-            $this->lazyObject->publicTransientField,
-            'fetching public transient field won\'t trigger lazy loading'
-        );
-        $property = $this
-            ->lazyLoadableObjectMetadata
-            ->getReflectionClass()
-            ->getProperty('protectedTransientField');
-        $property->setAccessible(true);
-        $this->assertSame(
-            'protectedTransientFieldValue',
-            $property->getValue($this->lazyObject),
-            'fetching protected transient field via reflection won\'t trigger lazy loading'
-        );
-    }
-
-    /**
-     * Provided to guarantee backwards compatibility
-     */
-    public function testLoadProxyMethod()
-    {
-        $this->configureInitializerMock(2, array($this->lazyObject, '__load', array()));
-
-        $this->lazyObject->__load();
-        $this->lazyObject->__load();
-    }
-
-    public function testLoadingWithPersisterWillBeTriggeredOnlyOnce()
-    {
-        $this
-            ->proxyLoader
-            ->expects($this->once())
-            ->method('load')
-            ->with(
-                array(
-                    'publicIdentifierField' => 'publicIdentifierFieldValue',
-                    'protectedIdentifierField' => 'protectedIdentifierFieldValue',
-                ),
-                $this->lazyObject
-            )
-            ->will($this->returnCallback(function ($id, LazyLoadableObject $lazyObject) {
-                // setting a value to verify that the persister can actually set something in the object
-                $lazyObject->publicAssociation = $id['publicIdentifierField'] . '-test';
-                return true;
-            }));
-        $this->lazyObject->__setInitializer($this->getSuggestedInitializerImplementation());
-
-        $this->lazyObject->__load();
-        $this->lazyObject->__load();
-        $this->assertSame('publicIdentifierFieldValue-test', $this->lazyObject->publicAssociation);
-    }
-
-    public function testFailedLoadingWillThrowException()
-    {
-        $this->proxyLoader->expects($this->any())->method('load')->will($this->returnValue(null));
-        $this->setExpectedException('UnexpectedValueException');
-        $this->lazyObject->__setInitializer($this->getSuggestedInitializerImplementation());
-
-        $this->lazyObject->__load();
-    }
-
-    public function testCloningWithPersister()
-    {
-        $this->lazyObject->publicTransientField = 'should-not-change';
-        $this
-            ->proxyLoader
-            ->expects($this->exactly(2))
-            ->method('load')
-            ->with(array(
-                'publicIdentifierField'    => 'publicIdentifierFieldValue',
-                'protectedIdentifierField' => 'protectedIdentifierFieldValue',
-            ))
-            ->will($this->returnCallback(function () {
-                $blueprint = new LazyLoadableObject();
-                $blueprint->publicPersistentField = 'checked-persistent-field';
-                $blueprint->publicAssociation     = 'checked-association-field';
-                $blueprint->publicTransientField  = 'checked-transient-field';
-
-                return $blueprint;
-            }));
-
-        $firstClone = clone $this->lazyObject;
-        $this->assertSame(
-            'checked-persistent-field',
-            $firstClone->publicPersistentField,
-            'Persistent fields are cloned correctly'
-        );
-        $this->assertSame(
-            'checked-association-field',
-            $firstClone->publicAssociation,
-            'Associations are cloned correctly'
-        );
-        $this->assertSame(
-            'should-not-change',
-            $firstClone->publicTransientField,
-            'Transient fields are not overwritten'
-        );
-
-        $secondClone = clone $this->lazyObject;
-        $this->assertSame(
-            'checked-persistent-field',
-            $secondClone->publicPersistentField,
-            'Persistent fields are cloned correctly'
-        );
-        $this->assertSame(
-            'checked-association-field',
-            $secondClone->publicAssociation,
-            'Associations are cloned correctly'
-        );
-        $this->assertSame(
-            'should-not-change',
-            $secondClone->publicTransientField,
-            'Transient fields are not overwritten'
-        );
-
-        // those should not trigger lazy loading
-        $firstClone->__load();
-        $secondClone->__load();
-    }
-
-    public function testNotInitializedProxyUnserialization()
-    {
-        $this->configureInitializerMock();
-
-        $serialized = serialize($this->lazyObject);
-        /* @var $unserialized LazyLoadableObject|Proxy */
-        $unserialized = unserialize($serialized);
-        $reflClass = $this->lazyLoadableObjectMetadata->getReflectionClass();
-
-        $this->assertFalse($unserialized->__isInitialized(), 'serialization didn\'t cause intialization');
-
-        // Checking identifiers
-        $this->assertSame('publicIdentifierFieldValue', $unserialized->publicIdentifierField, 'identifiers are kept');
-        $protectedIdentifierField = $reflClass->getProperty('protectedIdentifierField');
-        $protectedIdentifierField->setAccessible(true);
-        $this->assertSame(
-            'protectedIdentifierFieldValue',
-            $protectedIdentifierField->getValue($unserialized),
-            'identifiers are kept'
-        );
-
-        // Checking transient fields
-        $this->assertSame(
-            'publicTransientFieldValue',
-            $unserialized->publicTransientField,
-            'transient fields are kept'
-        );
-        $protectedTransientField = $reflClass->getProperty('protectedTransientField');
-        $protectedTransientField->setAccessible(true);
-        $this->assertSame(
-            'protectedTransientFieldValue',
-            $protectedTransientField->getValue($unserialized),
-            'transient fields are kept'
-        );
-
-        // Checking persistent fields
-        $this->assertSame(
-            'publicPersistentFieldValue',
-            $unserialized->publicPersistentField,
-            'persistent fields are kept'
-        );
-        $protectedPersistentField = $reflClass->getProperty('protectedPersistentField');
-        $protectedPersistentField->setAccessible(true);
-        $this->assertSame(
-            'protectedPersistentFieldValue',
-            $protectedPersistentField->getValue($unserialized),
-            'persistent fields are kept'
-        );
-
-        // Checking associations
-        $this->assertSame('publicAssociationValue', $unserialized->publicAssociation, 'associations are kept');
-        $protectedAssociationField = $reflClass->getProperty('protectedAssociation');
-        $protectedAssociationField->setAccessible(true);
-        $this->assertSame(
-            'protectedAssociationValue',
-            $protectedAssociationField->getValue($unserialized),
-            'associations are kept'
-        );
-    }
-
-    public function testInitializedProxyUnserialization()
-    {
-        // persister will retrieve the lazy object itself, so that we don't have to re-define all field values
-        $this->proxyLoader->expects($this->once())->method('load')->will($this->returnValue($this->lazyObject));
-        $this->lazyObject->__setInitializer($this->getSuggestedInitializerImplementation());
-        $this->lazyObject->__load();
-
-        $serialized   = serialize($this->lazyObject);
-        $reflClass    = $this->lazyLoadableObjectMetadata->getReflectionClass();
-        /* @var $unserialized LazyLoadableObject|Proxy */
-        $unserialized = unserialize($serialized);
-
-        $this->assertTrue($unserialized->__isInitialized(), 'serialization didn\'t cause intialization');
-
-        // Checking transient fields
-        $this->assertSame(
-            'publicTransientFieldValue',
-            $unserialized->publicTransientField,
-            'transient fields are kept'
-        );
-        $protectedTransientField = $reflClass->getProperty('protectedTransientField');
-        $protectedTransientField->setAccessible(true);
-        $this->assertSame(
-            'protectedTransientFieldValue',
-            $protectedTransientField->getValue($unserialized),
-            'transient fields are kept'
-        );
-
-        // Checking persistent fields
-        $this->assertSame(
-            'publicPersistentFieldValue',
-            $unserialized->publicPersistentField,
-            'persistent fields are kept'
-        );
-        $protectedPersistentField = $reflClass->getProperty('protectedPersistentField');
-        $protectedPersistentField->setAccessible(true);
-        $this->assertSame(
-            'protectedPersistentFieldValue',
-            $protectedPersistentField->getValue($unserialized),
-            'persistent fields are kept'
-        );
-
-        // Checking identifiers
-        $this->assertSame(
-            'publicIdentifierFieldValue',
-            $unserialized->publicIdentifierField,
-            'identifiers are kept'
-        );
-        $protectedIdentifierField = $reflClass->getProperty('protectedIdentifierField');
-        $protectedIdentifierField->setAccessible(true);
-        $this->assertSame(
-            'protectedIdentifierFieldValue',
-            $protectedIdentifierField->getValue($unserialized),
-            'identifiers are kept'
-        );
-
-        // Checking associations
-        $this->assertSame('publicAssociationValue', $unserialized->publicAssociation, 'associations are kept');
-        $protectedAssociationField = $reflClass->getProperty('protectedAssociation');
-        $protectedAssociationField->setAccessible(true);
-        $this->assertSame(
-            'protectedAssociationValue',
-            $protectedAssociationField->getValue($unserialized),
-            'associations are kept'
-        );
-    }
-
-    public function testInitializationRestoresDefaultPublicLazyLoadedFieldValues()
-    {
-        // setting noop persister
-        $this->proxyLoader->expects($this->once())->method('load')->will($this->returnValue($this->lazyObject));
-        $this->lazyObject->__setInitializer($this->getSuggestedInitializerImplementation());
-
-        $this->assertSame(
-            'publicPersistentFieldValue',
-            $this->lazyObject->publicPersistentField,
-            'Persistent field is restored to default value'
-        );
-        $this->assertSame(
-            'publicAssociationValue',
-            $this->lazyObject->publicAssociation,
-            'Association is restored to default value'
-        );
-    }
-
-    public function testSettingPublicFieldsCausesLazyLoading()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__set', array('publicPersistentField', 'newPublicPersistentFieldValue')),
-            function () use ($test) {
-                $test->setProxyValue('publicPersistentField', 'overrideValue');
-                $test->setProxyValue('publicAssociation', 'newAssociationValue');
-            }
-        );
-
-        $this->lazyObject->publicPersistentField = 'newPublicPersistentFieldValue';
-        $this->assertSame('newPublicPersistentFieldValue', $this->lazyObject->publicPersistentField);
-        $this->assertSame('newAssociationValue', $this->lazyObject->publicAssociation);
-    }
-
-    public function testSettingPublicAssociationCausesLazyLoading()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__set', array('publicAssociation', 'newPublicAssociationValue')),
-            function () use ($test) {
-                $test->setProxyValue('publicPersistentField', 'newPublicPersistentFieldValue');
-                $test->setProxyValue('publicAssociation', 'overrideValue');
-            }
-        );
-
-        $this->lazyObject->publicAssociation = 'newPublicAssociationValue';
-        $this->assertSame('newPublicAssociationValue', $this->lazyObject->publicAssociation);
-        $this->assertSame('newPublicPersistentFieldValue', $this->lazyObject->publicPersistentField);
-    }
-
-    public function testCheckingPublicFieldsCausesLazyLoading()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__isset', array('publicPersistentField')),
-            function () use ($test) {
-                $test->setProxyValue('publicPersistentField', null);
-                $test->setProxyValue('publicAssociation', 'setPublicAssociation');
-            }
-        );
-
-        $this->assertFalse(isset($this->lazyObject->publicPersistentField));
-        $this->assertNull($this->lazyObject->publicPersistentField);
-        $this->assertTrue(isset($this->lazyObject->publicAssociation));
-        $this->assertSame('setPublicAssociation', $this->lazyObject->publicAssociation);
-    }
-
-    public function testCheckingPublicAssociationCausesLazyLoading()
-    {
-        $test = $this;
-        $this->configureInitializerMock(
-            1,
-            array($this->lazyObject, '__isset', array('publicAssociation')),
-            function () use ($test) {
-                $test->setProxyValue('publicPersistentField', 'newPersistentFieldValue');
-                $test->setProxyValue('publicAssociation', 'setPublicAssociation');
-            }
-        );
-
-        $this->assertTrue(isset($this->lazyObject->publicAssociation));
-        $this->assertSame('setPublicAssociation', $this->lazyObject->publicAssociation);
-        $this->assertTrue(isset($this->lazyObject->publicPersistentField));
-        $this->assertSame('newPersistentFieldValue', $this->lazyObject->publicPersistentField);
-    }
-
-    /**
-     * Converts a given callable into a closure
-     *
-     * @param  callable $callable
-     * @return \Closure
-     */
-    public function getClosure($callable) {
-        return function () use ($callable) {
-            call_user_func_array($callable, func_get_args());
-        };
-    }
-
-    /**
-     * Configures the current initializer callback mock with provided matcher params
-     *
-     * @param int $expectedCallCount the number of invocations to be expected. If a value< 0 is provided, `any` is used
-     * @param array $callParamsMatch an ordered array of parameters to be expected
-     * @param callable $callbackClosure a return callback closure
-     *
-     * @return \PHPUnit_Framework_MockObject_MockObject|
-     */
-    protected function configureInitializerMock(
-        $expectedCallCount = 0,
-        array $callParamsMatch = null,
-        \Closure $callbackClosure = null
-    ) {
-        if (!$expectedCallCount) {
-            $invocationCountMatcher = $this->exactly((int) $expectedCallCount);
-        } else {
-            $invocationCountMatcher = $expectedCallCount < 0 ? $this->any() : $this->exactly($expectedCallCount);
-        }
-
-        $invocationMocker = $this->initializerCallbackMock->expects($invocationCountMatcher)->method('__invoke');
-
-        if (null !== $callParamsMatch) {
-            call_user_func_array(array($invocationMocker, 'with'), $callParamsMatch);
-        }
-
-        if ($callbackClosure) {
-            $invocationMocker->will($this->returnCallback($callbackClosure));
-        }
-    }
-
-    /**
-     * Sets a value in the current proxy object without triggering lazy loading through `__set`
-     *
-     * @link https://bugs.php.net/bug.php?id=63463
-     *
-     * @param string $property
-     * @param mixed $value
-     */
-    public function setProxyValue($property, $value)
-    {
-        $reflectionProperty = new \ReflectionProperty($this->lazyObject, $property);
-        $initializer        = $this->lazyObject->__getInitializer();
-
-        // disabling initializer since setting `publicPersistentField` triggers `__set`/`__get`
-        $this->lazyObject->__setInitializer(null);
-        $reflectionProperty->setValue($this->lazyObject, $value);
-        $this->lazyObject->__setInitializer($initializer);
-    }
-
-    /**
-     * Retrieves the suggested implementation of an initializer that proxy factories in O*M
-     * are currently following, and that should be used to initialize the current proxy object
-     *
-     * @return \Closure
-     */
-    protected function getSuggestedInitializerImplementation()
-    {
-        $loader     = $this->proxyLoader;
-        $identifier = $this->identifier;
-
-        return function (LazyLoadableObject $proxy) use ($loader, $identifier) {
-            /* @var $proxy LazyLoadableObject|Proxy */
-            $proxy->__setInitializer(null);
-            $proxy->__setCloner(null);
-
-
-            if ($proxy->__isInitialized()) {
-                return;
-            }
-
-            $properties = $proxy->__getLazyProperties();
-
-            foreach ($properties as $propertyName => $property) {
-                if (!isset($proxy->$propertyName)) {
-                    $proxy->$propertyName = $properties[$propertyName];
-                }
-            }
-
-            $proxy->__setInitialized(true);
-
-            if (method_exists($proxy, '__wakeup')) {
-                $proxy->__wakeup();
-            }
-
-            if (null === $loader->load($identifier, $proxy)) {
-                throw new \UnexpectedValueException('Couldn\'t load');
-            }
-        };
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyMagicMethodsTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyMagicMethodsTest.php
deleted file mode 100644
index 935db31..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/ProxyMagicMethodsTest.php
+++ /dev/null
@@ -1,307 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Tests\Common\Proxy;
-
-use Doctrine\Common\Proxy\ProxyGenerator;
-use Doctrine\Common\Proxy\Proxy;
-use Doctrine\Common\Proxy\Exception\UnexpectedValueException;
-use PHPUnit_Framework_TestCase;
-use ReflectionClass;
-
-/**
- * Test for behavior of proxies with inherited magic methods
- *
- * @author Marco Pivetta <ocramius@gmail.com>
- */
-class ProxyMagicMethodsTest extends PHPUnit_Framework_TestCase
-{
-    /**
-     * @var \Doctrine\Common\Proxy\ProxyGenerator
-     */
-    protected $proxyGenerator;
-
-    /**
-     * @var LazyLoadableObject|Proxy
-     */
-    protected $lazyObject;
-
-    protected $identifier = array(
-        'publicIdentifierField' => 'publicIdentifierFieldValue',
-        'protectedIdentifierField' => 'protectedIdentifierFieldValue',
-    );
-
-    /**
-     * @var \PHPUnit_Framework_MockObject_MockObject|Callable
-     */
-    protected $initializerCallbackMock;
-
-    /**
-     * {@inheritDoc}
-     */
-    public function setUp()
-    {
-        $this->proxyGenerator = new ProxyGenerator(__DIR__ . '/generated', __NAMESPACE__ . '\\MagicMethodProxy');
-    }
-
-    public static function tearDownAfterClass()
-    {
-
-    }
-
-    public function testInheritedMagicGet()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\MagicGetClass');
-        $proxy          = new $proxyClassName(
-            function (Proxy $proxy, $method, $params) use (&$counter) {
-                if ( ! in_array($params[0], array('publicField', 'test', 'notDefined'))) {
-                    throw new \InvalidArgumentException('Unexpected access to field "' . $params[0] . '"');
-                }
-
-                $initializer = $proxy->__getInitializer();
-
-                $proxy->__setInitializer(null);
-
-                $proxy->publicField = 'modifiedPublicField';
-                $counter            += 1;
-
-                $proxy->__setInitializer($initializer);
-
-            }
-        );
-
-        $this->assertSame('id', $proxy->id);
-        $this->assertSame('modifiedPublicField', $proxy->publicField);
-        $this->assertSame('test', $proxy->test);
-        $this->assertSame('not defined', $proxy->notDefined);
-
-        $this->assertSame(3, $counter);
-    }
-
-    /**
-     * @group DCOM-194
-     */
-    public function testInheritedMagicGetByRef()
-    {
-        $proxyClassName    = $this->generateProxyClass(__NAMESPACE__ . '\\MagicGetByRefClass');
-        /* @var $proxy \Doctrine\Tests\Common\Proxy\MagicGetByRefClass */
-        $proxy             = new $proxyClassName();
-        $proxy->valueField = 123;
-        $value             = & $proxy->__get('value');
-
-        $this->assertSame(123, $value);
-
-        $value = 456;
-
-        $this->assertSame(456, $proxy->__get('value'), 'Value was fetched by reference');
-
-        $this->setExpectedException('InvalidArgumentException');
-
-        $undefined = $proxy->nonExisting;
-    }
-
-    public function testInheritedMagicSet()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\MagicSetClass');
-        $proxy          = new $proxyClassName(
-            function (Proxy  $proxy, $method, $params) use (&$counter) {
-                if ( ! in_array($params[0], array('publicField', 'test', 'notDefined'))) {
-                    throw new \InvalidArgumentException('Unexpected access to field "' . $params[0] . '"');
-                }
-
-                $counter += 1;
-            }
-        );
-
-        $this->assertSame('id', $proxy->id);
-
-        $proxy->publicField = 'publicFieldValue';
-
-        $this->assertSame('publicFieldValue', $proxy->publicField);
-
-        $proxy->test = 'testValue';
-
-        $this->assertSame('testValue', $proxy->testAttribute);
-
-        $proxy->notDefined = 'not defined';
-
-        $this->assertSame('not defined', $proxy->testAttribute);
-        $this->assertSame(3, $counter);
-    }
-
-    public function testInheritedMagicSleep()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\MagicSleepClass');
-        $proxy          = new $proxyClassName();
-
-        $this->assertSame('defaultValue', $proxy->serializedField);
-        $this->assertSame('defaultValue', $proxy->nonSerializedField);
-
-        $proxy->serializedField    = 'changedValue';
-        $proxy->nonSerializedField = 'changedValue';
-
-        $unserialized = unserialize(serialize($proxy));
-
-        $this->assertSame('changedValue', $unserialized->serializedField);
-        $this->assertSame('defaultValue', $unserialized->nonSerializedField, 'Field was not returned by "__sleep"');
-    }
-
-    public function testInheritedMagicWakeup()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\MagicWakeupClass');
-        $proxy          = new $proxyClassName();
-
-        $this->assertSame('defaultValue', $proxy->wakeupValue);
-
-        $proxy->wakeupValue = 'changedValue';
-        $unserialized       = unserialize(serialize($proxy));
-
-        $this->assertSame('newWakeupValue', $unserialized->wakeupValue, '"__wakeup" was called');
-
-        $unserialized->__setInitializer(function (Proxy $proxy) {
-            $proxy->__setInitializer(null);
-
-            $proxy->publicField = 'newPublicFieldValue';
-        });
-
-        $this->assertSame('newPublicFieldValue', $unserialized->publicField, 'Proxy can still be initialized');
-    }
-
-    public function testInheritedMagicIsset()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\MagicIssetClass');
-        $proxy          = new $proxyClassName(function (Proxy $proxy, $method, $params) use (&$counter) {
-            if (in_array($params[0], array('publicField', 'test', 'nonExisting'))) {
-                $initializer = $proxy->__getInitializer();
-
-                $proxy->__setInitializer(null);
-
-                $proxy->publicField = 'modifiedPublicField';
-                $counter            += 1;
-
-                $proxy->__setInitializer($initializer);
-
-                return;
-            }
-
-            throw new \InvalidArgumentException(
-                sprintf('Should not be initialized when checking isset("%s")', $params[0])
-            );
-        });
-
-        $this->assertTrue(isset($proxy->id));
-        $this->assertTrue(isset($proxy->publicField));
-        $this->assertTrue(isset($proxy->test));
-        $this->assertFalse(isset($proxy->nonExisting));
-
-        $this->assertSame(3, $counter);
-    }
-
-    public function testInheritedMagicClone()
-    {
-        $proxyClassName = $this->generateProxyClass(__NAMESPACE__ . '\\MagicCloneClass');
-        $proxy          = new $proxyClassName(
-            null,
-            function ($proxy) {
-                $proxy->cloned = true;
-            }
-        );
-
-        $cloned = clone $proxy;
-
-        $this->assertSame('newClonedValue', $cloned->clonedValue);
-        $this->assertFalse($proxy->cloned);
-        $this->assertTrue($cloned->cloned);
-    }
-
-    /**
-     * @param $className
-     *
-     * @return string
-     */
-    private function generateProxyClass($className)
-    {
-        $proxyClassName = 'Doctrine\\Tests\\Common\\Proxy\\MagicMethodProxy\\__CG__\\' . $className;
-
-        if (class_exists($proxyClassName, false)) {
-            return $proxyClassName;
-        }
-
-        $metadata = $this->getMock('Doctrine\\Common\\Persistence\\Mapping\\ClassMetadata');
-
-        $metadata
-            ->expects($this->any())
-            ->method('getName')
-            ->will($this->returnValue($className));
-
-        $metadata
-            ->expects($this->any())
-            ->method('getIdentifier')
-            ->will($this->returnValue(array('id')));
-
-        $metadata
-            ->expects($this->any())
-            ->method('getReflectionClass')
-            ->will($this->returnValue(new ReflectionClass($className)));
-
-        $metadata
-            ->expects($this->any())
-            ->method('isIdentifier')
-            ->will($this->returnCallback(function ($fieldName) {
-                return 'id' === $fieldName;
-            }));
-
-        $metadata
-            ->expects($this->any())
-            ->method('hasField')
-            ->will($this->returnCallback(function ($fieldName) {
-                return in_array($fieldName, array('id', 'publicField'));
-            }));
-
-        $metadata
-            ->expects($this->any())
-            ->method('hasAssociation')
-            ->will($this->returnValue(false));
-
-        $metadata
-            ->expects($this->any())
-            ->method('getFieldNames')
-            ->will($this->returnValue(array('id', 'publicField')));
-
-        $metadata
-            ->expects($this->any())
-            ->method('getIdentifierFieldNames')
-            ->will($this->returnValue(array('id')));
-
-        $metadata
-            ->expects($this->any())
-            ->method('getAssociationNames')
-            ->will($this->returnValue(array()));
-
-        $metadata
-            ->expects($this->any())
-            ->method('getTypeOfField')
-            ->will($this->returnValue('string'));
-
-        $this->proxyGenerator->generateProxyClass($metadata);
-        require_once $this->proxyGenerator->getProxyFileName($className);
-
-        return $proxyClassName;
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/SleepClass.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/SleepClass.php
deleted file mode 100644
index 3c6ffcd..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Proxy/SleepClass.php
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Proxy;
-
-/**
- * Test asset class
- */
-class SleepClass
-{
-    public $id;
-
-    /**
-     * @return array
-     */
-    public function __sleep()
-    {
-        return array('id');
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/DeeperNamespaceParent.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/DeeperNamespaceParent.php
deleted file mode 100644
index 72faa77..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/DeeperNamespaceParent.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-class SameNamespaceParent extends Dummies\NoParent
-{
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/Dummies/NoParent.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/Dummies/NoParent.php
deleted file mode 100644
index f0e8dc9..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/Dummies/NoParent.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection\Dummies;
-
-class NoParent
-{
-    public $test;
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/FullyClassifiedParent.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/FullyClassifiedParent.php
deleted file mode 100644
index 09a2641..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/FullyClassifiedParent.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-class FullyClassifiedParent extends \Doctrine\Tests\Common\Reflection\NoParent
-{
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/NoParent.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/NoParent.php
deleted file mode 100644
index f6a98cb..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/NoParent.php
+++ /dev/null
@@ -1,8 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-class NoParent
-{
-    public $test;
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/RuntimePublicReflectionPropertyTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/RuntimePublicReflectionPropertyTest.php
deleted file mode 100644
index 779892f..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/RuntimePublicReflectionPropertyTest.php
+++ /dev/null
@@ -1,192 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-use PHPUnit_Framework_TestCase;
-use Doctrine\Common\Reflection\RuntimePublicReflectionProperty;
-use Doctrine\Common\Proxy\Proxy;
-
-class RuntimePublicReflectionPropertyTest extends PHPUnit_Framework_TestCase
-{
-    public function testGetValueOnProxyPublicProperty()
-    {
-        $getCheckMock = $this->getMock('stdClass', array('callGet'));
-        $getCheckMock->expects($this->never())->method('callGet');
-        $initializer = function () use ($getCheckMock) {
-            call_user_func($getCheckMock);
-        };
-
-        $mockProxy = new RuntimePublicReflectionPropertyTestProxyMock();
-        $mockProxy->__setInitializer($initializer);
-
-        $reflProperty = new RuntimePublicReflectionProperty(
-            __NAMESPACE__ . '\RuntimePublicReflectionPropertyTestProxyMock',
-            'checkedProperty'
-        );
-
-        $this->assertSame('testValue', $reflProperty->getValue($mockProxy));
-        unset($mockProxy->checkedProperty);
-        $this->assertNull($reflProperty->getValue($mockProxy));
-    }
-
-    public function testSetValueOnProxyPublicProperty()
-    {
-        $setCheckMock = $this->getMock('stdClass', array('neverCallSet'));
-        $setCheckMock->expects($this->never())->method('neverCallSet');
-        $initializer = function () use ($setCheckMock) {
-            call_user_func(array($setCheckMock, 'neverCallSet'));
-        };
-
-        $mockProxy = new RuntimePublicReflectionPropertyTestProxyMock();
-        $mockProxy->__setInitializer($initializer);
-
-        $reflProperty = new RuntimePublicReflectionProperty(
-            __NAMESPACE__ . '\RuntimePublicReflectionPropertyTestProxyMock',
-            'checkedProperty'
-        );
-
-        $reflProperty->setValue($mockProxy, 'newValue');
-        $this->assertSame('newValue', $mockProxy->checkedProperty);
-
-        unset($mockProxy->checkedProperty);
-        $reflProperty->setValue($mockProxy, 'otherNewValue');
-        $this->assertSame('otherNewValue', $mockProxy->checkedProperty);
-
-        $setCheckMock = $this->getMock('stdClass', array('callSet'));
-        $setCheckMock->expects($this->once())->method('callSet');
-        $initializer = function () use ($setCheckMock) {
-            call_user_func(array($setCheckMock, 'callSet'));
-        };
-
-        $mockProxy->__setInitializer($initializer);
-        $mockProxy->__setInitialized(true);
-
-        unset($mockProxy->checkedProperty);
-        $reflProperty->setValue($mockProxy, 'againNewValue');
-        $this->assertSame('againNewValue', $mockProxy->checkedProperty);
-    }
-}
-
-/**
- * Mock that simulates proxy public property lazy loading
- */
-class RuntimePublicReflectionPropertyTestProxyMock implements Proxy
-{
-    /**
-     * @var \Closure|null
-     */
-    private $initializer     = null;
-
-    /**
-     * @var \Closure|null
-     */
-    private $initialized     = false;
-
-    /**
-     * @var string
-     */
-    public  $checkedProperty = 'testValue';
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __getInitializer()
-    {
-        return $this->initializer;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __setInitializer(\Closure $initializer = null)
-    {
-        $this->initializer = $initializer;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __getLazyProperties()
-    {
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __load()
-    {
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __isInitialized()
-    {
-        return $this->initialized;
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __setInitialized($initialized)
-    {
-        $this->initialized = (bool) $initialized;
-    }
-
-    /**
-     * @param string $name
-     */
-    public function __get($name)
-    {
-        if ($this->initializer) {
-            $cb = $this->initializer;
-            $cb();
-        }
-
-        return $this->checkedProperty;
-    }
-
-    /**
-     * @param string $name
-     * @param mixed  $value
-     */
-    public function __set($name, $value)
-    {
-        if ($this->initializer) {
-            $cb = $this->initializer;
-            $cb();
-        }
-
-        // triggers notices if `$name` is used: see https://bugs.php.net/bug.php?id=63463
-        $this->checkedProperty = $value;
-    }
-
-    /**
-     * @param string $name
-     *
-     * @return integer
-     */
-    public function __isset($name)
-    {
-        if ($this->initializer) {
-            $cb = $this->initializer;
-            $cb();
-        }
-
-        return isset($this->checkedProperty);
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __setCloner(\Closure $cloner = null)
-    {
-    }
-
-    /**
-     * {@inheritDoc}
-     */
-    public function __getCloner()
-    {
-    }
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/SameNamespaceParent.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/SameNamespaceParent.php
deleted file mode 100644
index 844d4a5..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/SameNamespaceParent.php
+++ /dev/null
@@ -1,7 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-class SameNamespaceParent extends NoParent
-{
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/StaticReflectionParserTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/StaticReflectionParserTest.php
deleted file mode 100644
index a180e09..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/StaticReflectionParserTest.php
+++ /dev/null
@@ -1,63 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Reflection\StaticReflectionParser;
-use Doctrine\Common\Reflection\Psr0FindFile;
-
-class StaticReflectionParserTest extends DoctrineTestCase
-{
-    /**
-     * @dataProvider classAnnotationOptimize
-     *
-     * @param bool $classAnnotationOptimize
-     *
-     * @return void
-     */
-    public function testParentClass($classAnnotationOptimize)
-    {
-        $testsRoot = substr(__DIR__, 0, -strlen(__NAMESPACE__) - 1);
-        $paths = array(
-            'Doctrine\\Tests' => array($testsRoot),
-        );
-        $noParentClassName = 'Doctrine\\Tests\\Common\\Reflection\\NoParent';
-        $staticReflectionParser = new StaticReflectionParser($noParentClassName, new Psr0FindFile($paths), $classAnnotationOptimize);
-        $declaringClassName = $staticReflectionParser->getStaticReflectionParserForDeclaringClass('property', 'test')->getClassName();
-        $this->assertEquals($noParentClassName, $declaringClassName);
-
-        $className = 'Doctrine\\Tests\\Common\\Reflection\\FullyClassifiedParent';
-        $staticReflectionParser = new StaticReflectionParser($className, new Psr0FindFile($paths), $classAnnotationOptimize);
-        $declaringClassName = $staticReflectionParser->getStaticReflectionParserForDeclaringClass('property', 'test')->getClassName();
-        $this->assertEquals($noParentClassName, $declaringClassName);
-
-        $className = 'Doctrine\\Tests\\Common\\Reflection\\SameNamespaceParent';
-        $staticReflectionParser = new StaticReflectionParser($className, new Psr0FindFile($paths), $classAnnotationOptimize);
-        $declaringClassName = $staticReflectionParser->getStaticReflectionParserForDeclaringClass('property', 'test')->getClassName();
-        $this->assertEquals($noParentClassName, $declaringClassName);
-
-        $dummyParentClassName = 'Doctrine\\Tests\\Common\\Reflection\\Dummies\\NoParent';
-
-        $className = 'Doctrine\\Tests\\Common\\Reflection\\DeeperNamespaceParent';
-        $staticReflectionParser = new StaticReflectionParser($className, new Psr0FindFile($paths), $classAnnotationOptimize);
-        $declaringClassName = $staticReflectionParser->getStaticReflectionParserForDeclaringClass('property', 'test')->getClassName();
-        $this->assertEquals($dummyParentClassName, $declaringClassName);
-
-        $className = 'Doctrine\\Tests\\Common\\Reflection\\UseParent';
-        $staticReflectionParser = new StaticReflectionParser($className, new Psr0FindFile($paths), $classAnnotationOptimize);
-        $declaringClassName = $staticReflectionParser->getStaticReflectionParserForDeclaringClass('property', 'test')->getClassName();
-        $this->assertEquals($dummyParentClassName, $declaringClassName);
-
-    }
-
-    /**
-     * @return array
-     */
-    public function classAnnotationOptimize()
-    {
-        return array(
-            array(false),
-            array(true)
-        );
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/UseParent.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/UseParent.php
deleted file mode 100644
index dd512d4..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Reflection/UseParent.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Reflection;
-
-use Doctrine\Tests\Common\Reflection\Dummies\NoParent as Test;
-
-class UseParent extends Test
-{
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/ClassUtilsTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/ClassUtilsTest.php
deleted file mode 100644
index a281450..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/ClassUtilsTest.php
+++ /dev/null
@@ -1,100 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Util
-{
-    use Doctrine\Tests\DoctrineTestCase;
-    use Doctrine\Common\Util\ClassUtils;
-
-    class ClassUtilsTest extends DoctrineTestCase
-    {
-        static public function dataGetClass()
-        {
-            return array(
-                array('stdClass', 'stdClass'),
-                array('Doctrine\Common\Util\ClassUtils', 'Doctrine\Common\Util\ClassUtils'),
-                array( 'MyProject\Proxies\__CG__\stdClass', 'stdClass' ),
-                array( 'MyProject\Proxies\__CG__\OtherProject\Proxies\__CG__\stdClass', 'stdClass' ),
-                array( 'MyProject\Proxies\__CG__\Doctrine\Tests\Common\Util\ChildObject','Doctrine\Tests\Common\Util\ChildObject' )
-            );
-        }
-
-        /**
-         * @dataProvider dataGetClass
-         */
-        public function testGetRealClass($className, $expectedClassName)
-        {
-            $this->assertEquals($expectedClassName, ClassUtils::getRealClass($className));
-        }
-
-        /**
-         * @dataProvider dataGetClass
-         */
-        public function testGetClass( $className, $expectedClassName )
-        {
-            $object = new $className();
-            $this->assertEquals($expectedClassName, ClassUtils::getClass($object));
-        }
-
-        public function testGetParentClass()
-        {
-            $parentClass = ClassUtils::getParentClass( 'MyProject\Proxies\__CG__\OtherProject\Proxies\__CG__\Doctrine\Tests\Common\Util\ChildObject' );
-            $this->assertEquals('stdClass', $parentClass);
-        }
-
-        public function testGenerateProxyClassName()
-        {
-            $this->assertEquals( 'Proxies\__CG__\stdClass', ClassUtils::generateProxyClassName( 'stdClass', 'Proxies' ) );
-        }
-
-        /**
-         * @dataProvider dataGetClass
-         */
-        public function testNewReflectionClass( $className, $expectedClassName )
-        {
-            $reflClass = ClassUtils::newReflectionClass( $className );
-            $this->assertEquals( $expectedClassName, $reflClass->getName() );
-        }
-
-        /**
-         * @dataProvider dataGetClass
-         */
-        public function testNewReflectionObject( $className, $expectedClassName )
-        {
-            $object = new $className;
-            $reflClass = ClassUtils::newReflectionObject( $object );
-            $this->assertEquals( $expectedClassName, $reflClass->getName() );
-        }
-    }
-
-    class ChildObject extends \stdClass
-    {
-    }
-}
-
-namespace MyProject\Proxies\__CG__
-{
-    class stdClass extends \stdClass
-    {
-    }
-}
-
-namespace MyProject\Proxies\__CG__\Doctrine\Tests\Common\Util
-{
-    class ChildObject extends \Doctrine\Tests\Common\Util\ChildObject
-    {
-    }
-}
-
-namespace MyProject\Proxies\__CG__\OtherProject\Proxies\__CG__
-{
-    class stdClass extends \MyProject\Proxies\__CG__\stdClass
-    {
-    }
-}
-
-namespace MyProject\Proxies\__CG__\OtherProject\Proxies\__CG__\Doctrine\Tests\Common\Util
-{
-    class ChildObject extends \MyProject\Proxies\__CG__\Doctrine\Tests\Common\Util\ChildObject
-    {
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/DebugTest.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/DebugTest.php
deleted file mode 100644
index f6fc069..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/Common/Util/DebugTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Util;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Util\Debug;
-
-class DebugTest extends DoctrineTestCase
-{
-    public function testExportObject( )
-    {
-        $obj = new \stdClass;
-        $obj->foo = "bar";
-        $obj->bar = 1234;
-
-        $var = Debug::export($obj, 2);
-        $this->assertEquals( "stdClass", $var->__CLASS__ );
-    }
-
-    public function testExportDateTime()
-    {
-        $obj = new \DateTime( "2010-10-10 10:10:10" );
-
-        $var = Debug::export( $obj, 2 );
-        $this->assertEquals( "DateTime", $var->__CLASS__ );
-    }
-
-    public function testExportArrayTraversable()
-    {
-        $obj = new \ArrayObject(array('foobar'));
-
-        $var = Debug::export($obj, 2);
-        $this->assertContains('foobar', $var->__STORAGE__);
-
-        $it = new \ArrayIterator(array('foobar'));
-
-        $var = Debug::export($it, 5);
-        $this->assertContains('foobar', $var->__STORAGE__);
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/DoctrineTestCase.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/DoctrineTestCase.php
deleted file mode 100644
index e8323d2..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/DoctrineTestCase.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-namespace Doctrine\Tests;
-
-/**
- * Base testcase class for all Doctrine testcases.
- */
-abstract class DoctrineTestCase extends \PHPUnit_Framework_TestCase
-{
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/common/tests/Doctrine/Tests/TestInit.php b/core/vendor/doctrine/common/tests/Doctrine/Tests/TestInit.php
deleted file mode 100644
index 07d74e6..0000000
--- a/core/vendor/doctrine/common/tests/Doctrine/Tests/TestInit.php
+++ /dev/null
@@ -1,26 +0,0 @@
-<?php
-/*
- * This file bootstraps the test environment.
- */
-namespace Doctrine\Tests;
-
-error_reporting(E_ALL | E_STRICT);
-
-// register silently failing autoloader
-spl_autoload_register(function($class)
-{
-    if (0 === strpos($class, 'Doctrine\Tests\\')) {
-        $path = __DIR__.'/../../'.strtr($class, '\\', '/').'.php';
-        if (is_file($path) && is_readable($path)) {
-            require_once $path;
-
-            return true;
-        }
-    }
-});
-
-require_once __DIR__ . "/../../../vendor/autoload.php";
-
-\Doctrine\Common\Annotations\AnnotationRegistry::registerAutoloadNamespace(
-    'Doctrine\Tests\Common\Annotations\Fixtures', __DIR__ . '/../../'
-);
diff --git a/core/vendor/doctrine/common/tests/NativePhpunitTask.php b/core/vendor/doctrine/common/tests/NativePhpunitTask.php
deleted file mode 100644
index 7033283..0000000
--- a/core/vendor/doctrine/common/tests/NativePhpunitTask.php
+++ /dev/null
@@ -1,246 +0,0 @@
-<?php
-/**
- * Native PHPUnit Task
- *
- * LICENSE
- *
- * This source file is subject to the new BSD license that is bundled
- * with this package in the file LICENSE.txt.
- * If you did not receive a copy of the license and are unable to
- * obtain it through the world-wide-web, please send an email
- * to kontakt@beberlei.de so I can send you a copy immediately.
- */
-
-require_once 'PHPUnit/Autoload.php';
-
-/**
- * A more flexible and powerful PHPUnit Task than the native Phing one.
- *
- * Plus forward compatibility for PHPUnit 3.5 and later is ensured by using the PHPUnit Test Runner instead of implementing one.
- *
- * @author Benjamin Eberlei <kontakt@beberlei.de>
- */
-class NativePhpunitTask extends Task
-{
-    private $test;
-    private $testfile;
-    private $testdirectory;
-    private $configuration = null;
-    private $coverageClover = null;
-    private $junitlogfile = null;
-    private $haltonfailure = true;
-    private $haltonerror = true;
-
-    public function setTestdirectory($directory) {
-        $this->testdirectory = $directory;
-    }
-
-    public function setTest($test) {
-        $this->test = $test;
-    }
-
-    public function setTestfile($testfile) {
-        $this->testfile = $testfile;
-    }
-
-    public function setJunitlogfile($junitlogfile) {
-        if (strlen($junitlogfile) == 0) {
-            $junitlogfile = NULL;
-        }
-
-        $this->junitlogfile = $junitlogfile;
-    }
-
-    public function setConfiguration($configuration) {
-        if (strlen($configuration) == 0) {
-            $configuration = NULL;
-        }
-
-        $this->configuration = $configuration;
-    }
-
-    public function setCoverageClover($coverageClover) {
-        if (strlen($coverageClover) == 0) {
-            $coverageClover = NULL;
-        }
-
-        $this->coverageClover = $coverageClover;
-    }
-
-    public function setHaltonfailure($haltonfailures) {
-        $this->haltonfailure = $haltonfailures;
-    }
-
-    public function setHaltonerror($haltonerrors) {
-        $this->haltonerror = $haltonerrors;
-    }
-
-    public function init()
-    {
-        require_once "PHPUnit/Runner/Version.php";
-        $version = PHPUnit_Runner_Version::id();
-
-        if (version_compare($version, '3.4.0') < 0) {
-            throw new BuildException("NativePHPUnitTask requires PHPUnit version >= 3.2.0", $this->getLocation());
-        }
-
-        require_once 'PHPUnit/Util/Filter.php';
-
-        // point PHPUnit_MAIN_METHOD define to non-existing method
-        if (!defined('PHPUnit_MAIN_METHOD')) {
-            define('PHPUnit_MAIN_METHOD', 'PHPUnitTask::undefined');
-        }
-    }
-
-    public function main()
-    {
-        if (!is_dir(realpath($this->testdirectory))) {
-            throw new BuildException("NativePHPUnitTask requires a Test Directory path given, '".$this->testdirectory."' given.");
-        }
-        set_include_path(realpath($this->testdirectory) . PATH_SEPARATOR . get_include_path());
-
-        $printer = new NativePhpunitPrinter();
-
-        $arguments = array(
-            'configuration' => $this->configuration,
-            'coverageClover' => $this->coverageClover,
-            'junitLogfile' => $this->junitlogfile,
-            'printer' => $printer,
-        );
-
-        $runner = new PHPUnit_TextUI_TestRunner();
-        $suite = $runner->getTest($this->test, $this->testfile, true);
-
-        try {
-            $result = $runner->doRun($suite, $arguments);
-            /* @var $result PHPUnit_Framework_TestResult */
-
-            if ( ($this->haltonfailure && $result->failureCount() > 0) || ($this->haltonerror && $result->errorCount() > 0) ) {
-                throw new BuildException("PHPUnit: ".$result->failureCount()." Failures and ".$result->errorCount()." Errors, ".
-                    "last failure message: ".$printer->getMessages());
-            }
-
-            $this->log("PHPUnit Success: ".count($result->passed())." tests passed, no ".
-                "failures (".$result->skippedCount()." skipped, ".$result->notImplementedCount()." not implemented)");
-
-            // Hudson for example doesn't like the backslash in class names
-            if (is_file($this->coverageClover)) {
-                $this->log("Generated Clover Coverage XML to: ".$this->coverageClover);
-                $content = file_get_contents($this->coverageClover);
-                $content = str_replace("\\", ".", $content);
-                file_put_contents($this->coverageClover, $content);
-                unset($content);
-            }
-
-        } catch(\Exception $e) {
-            throw new BuildException("NativePhpunitTask failed: ".$e->getMessage());
-        }
-    }
-}
-
-class NativePhpunitPrinter extends PHPUnit_Util_Printer implements PHPUnit_Framework_TestListener
-{
-    private $_messages = array();
-
-    public function write($buffer)
-    {
-        // do nothing
-    }
-
-    public function getMessages()
-    {
-        return $this->_messages;
-    }
-
-    /**
-     * An error occurred.
-     *
-     * @param  PHPUnit_Framework_Test $test
-     * @param  Exception              $e
-     * @param  float                  $time
-     */
-    public function addError(PHPUnit_Framework_Test $test, Exception $e, $time)
-    {
-        $this->_messages[] = "Test ERROR: ".$test->getName().": ".$e->getMessage();
-    }
-
-    /**
-     * A failure occurred.
-     *
-     * @param  PHPUnit_Framework_Test                 $test
-     * @param  PHPUnit_Framework_AssertionFailedError $e
-     * @param  float                                  $time
-     */
-    public function addFailure(PHPUnit_Framework_Test $test, PHPUnit_Framework_AssertionFailedError $e, $time)
-    {
-        $this->_messages[] = "Test FAILED: ".$test->getName().": ".$e->getMessage();
-    }
-
-    /**
-     * Incomplete test.
-     *
-     * @param  PHPUnit_Framework_Test $test
-     * @param  Exception              $e
-     * @param  float                  $time
-     */
-    public function addIncompleteTest(PHPUnit_Framework_Test $test, Exception $e, $time)
-    {
-
-    }
-
-    /**
-     * Skipped test.
-     *
-     * @param  PHPUnit_Framework_Test $test
-     * @param  Exception              $e
-     * @param  float                  $time
-     * @since  Method available since Release 3.0.0
-     */
-    public function addSkippedTest(PHPUnit_Framework_Test $test, Exception $e, $time)
-    {
-
-    }
-
-    /**
-     * A test suite started.
-     *
-     * @param  PHPUnit_Framework_TestSuite $suite
-     * @since  Method available since Release 2.2.0
-     */
-    public function startTestSuite(PHPUnit_Framework_TestSuite $suite)
-    {
-
-    }
-
-    /**
-     * A test suite ended.
-     *
-     * @param  PHPUnit_Framework_TestSuite $suite
-     * @since  Method available since Release 2.2.0
-     */
-    public function endTestSuite(PHPUnit_Framework_TestSuite $suite)
-    {
-
-    }
-
-    /**
-     * A test started.
-     *
-     * @param  PHPUnit_Framework_Test $test
-     */
-    public function startTest(PHPUnit_Framework_Test $test)
-    {
-
-    }
-
-    /**
-     * A test ended.
-     *
-     * @param  PHPUnit_Framework_Test $test
-     * @param  float                  $time
-     */
-    public function endTest(PHPUnit_Framework_Test $test, $time)
-    {
-
-    }
-}
diff --git a/core/vendor/doctrine/common/tests/README.markdown b/core/vendor/doctrine/common/tests/README.markdown
deleted file mode 100644
index e6f1703..0000000
--- a/core/vendor/doctrine/common/tests/README.markdown
+++ /dev/null
@@ -1,27 +0,0 @@
-# Running the Doctrine 2 Testsuite
-
-## Running tests
-
-Execute PHPUnit in the root folder of your doctrine-common clone.
-
-    phpunit
-
-## Testing Lock-Support
-
-The Lock support in Doctrine 2 is tested using Gearman, which allows to run concurrent tasks in parallel.
-Install Gearman with PHP as follows:
-
-1. Go to http://www.gearman.org and download the latest Gearman Server
-2. Compile it and then call ldconfig
-3. Start it up "gearmand -vvvv"
-4. Install pecl/gearman by calling "gearman-beta"
-
-You can then go into tests/ and start up two workers:
-
-    php Doctrine/Tests/ORM/Functional/Locking/LockAgentWorker.php
-
-Then run the locking test-suite:
-
-    phpunit --configuration <myconfig.xml> Doctrine/Tests/ORM/Functional/Locking/GearmanLockTest.php
-
-This can run considerable time, because it is using sleep() to test for the timing ranges of locks.
\ No newline at end of file
diff --git a/core/vendor/doctrine/inflector/README.md b/core/vendor/doctrine/inflector/README.md
deleted file mode 100644
index f2d18d0..0000000
--- a/core/vendor/doctrine/inflector/README.md
+++ /dev/null
@@ -1,4 +0,0 @@
-# Doctrine Inflector
-
-Doctrine Inflector is a small library that can perform string manipulations
-with regard to upper-/lowercase and singular/plural forms of words.
diff --git a/core/vendor/doctrine/inflector/composer.json b/core/vendor/doctrine/inflector/composer.json
deleted file mode 100644
index 3d3c3f9..0000000
--- a/core/vendor/doctrine/inflector/composer.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
-    "name": "doctrine/inflector",
-    "type": "library",
-    "description": "Common String Manipulations with regard to casing and singular/plural rules.",
-    "keywords": ["string", "inflection", "singuarlize", "pluarlize"],
-    "homepage": "http://www.doctrine-project.org",
-    "license": "MIT",
-    "authors": [
-        {"name": "Guilherme Blanco", "email": "guilhermeblanco@gmail.com"},
-        {"name": "Roman Borschel", "email": "roman@code-factory.org"},
-        {"name": "Benjamin Eberlei", "email": "kontakt@beberlei.de"},
-        {"name": "Jonathan Wage", "email": "jonwage@gmail.com"},
-        {"name": "Johannes Schmitt", "email": "schmittjoh@gmail.com"}
-    ],
-    "require": {
-        "php": ">=5.3.2"
-    },
-    "autoload": {
-        "psr-0": { "Doctrine\\Common\\Inflector\\": "lib/" }
-    }
-}
diff --git a/core/vendor/doctrine/inflector/lib/Doctrine/Common/Inflector/Inflector.php b/core/vendor/doctrine/inflector/lib/Doctrine/Common/Inflector/Inflector.php
deleted file mode 100644
index f4e38e7..0000000
--- a/core/vendor/doctrine/inflector/lib/Doctrine/Common/Inflector/Inflector.php
+++ /dev/null
@@ -1,385 +0,0 @@
-<?php
-/*
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * This software consists of voluntary contributions made by many individuals
- * and is licensed under the MIT license. For more information, see
- * <http://www.doctrine-project.org>.
- */
-
-namespace Doctrine\Common\Inflector;
-
-/**
- * Doctrine inflector has static methods for inflecting text
- *
- * The methods in these classes are from several different sources collected
- * across several different php projects and several different authors. The
- * original author names and emails are not known.
- *
- * Plurialize & Singularize implementation are borrowed from CakePHP with some modifications.
- *
- * @link        www.doctrine-project.org
- * @since       1.0
- * @author      Konsta Vesterinen <kvesteri@cc.hut.fi>
- * @author      Jonathan H. Wage <jonwage@gmail.com>
- */
-class Inflector
-{
-    /**
-     * Plural inflector rules
-     *
-     * @var array
-     */
-    private static $plural = array(
-        'rules' => array(
-            '/(s)tatus$/i' => '\1\2tatuses',
-            '/(quiz)$/i' => '\1zes',
-            '/^(ox)$/i' => '\1\2en',
-            '/([m|l])ouse$/i' => '\1ice',
-            '/(matr|vert|ind)(ix|ex)$/i' => '\1ices',
-            '/(x|ch|ss|sh)$/i' => '\1es',
-            '/([^aeiouy]|qu)y$/i' => '\1ies',
-            '/(hive)$/i' => '\1s',
-            '/(?:([^f])fe|([lr])f)$/i' => '\1\2ves',
-            '/sis$/i' => 'ses',
-            '/([ti])um$/i' => '\1a',
-            '/(p)erson$/i' => '\1eople',
-            '/(m)an$/i' => '\1en',
-            '/(c)hild$/i' => '\1hildren',
-            '/(buffal|tomat)o$/i' => '\1\2oes',
-            '/(alumn|bacill|cact|foc|fung|nucle|radi|stimul|syllab|termin|vir)us$/i' => '\1i',
-            '/us$/i' => 'uses',
-            '/(alias)$/i' => '\1es',
-            '/(ax|cris|test)is$/i' => '\1es',
-            '/s$/' => 's',
-            '/^$/' => '',
-            '/$/' => 's',
-        ),
-        'uninflected' => array(
-            '.*[nrlm]ese', '.*deer', '.*fish', '.*measles', '.*ois', '.*pox', '.*sheep', 'people', 'cookie'
-        ),
-        'irregular' => array(
-            'atlas' => 'atlases',
-            'beef' => 'beefs',
-            'brother' => 'brothers',
-            'cafe' => 'cafes',
-            'child' => 'children',
-            'cookie' => 'cookies',
-            'corpus' => 'corpuses',
-            'cow' => 'cows',
-            'ganglion' => 'ganglions',
-            'genie' => 'genies',
-            'genus' => 'genera',
-            'graffito' => 'graffiti',
-            'hoof' => 'hoofs',
-            'loaf' => 'loaves',
-            'man' => 'men',
-            'money' => 'monies',
-            'mongoose' => 'mongooses',
-            'move' => 'moves',
-            'mythos' => 'mythoi',
-            'niche' => 'niches',
-            'numen' => 'numina',
-            'occiput' => 'occiputs',
-            'octopus' => 'octopuses',
-            'opus' => 'opuses',
-            'ox' => 'oxen',
-            'penis' => 'penises',
-            'person' => 'people',
-            'sex' => 'sexes',
-            'soliloquy' => 'soliloquies',
-            'testis' => 'testes',
-            'trilby' => 'trilbys',
-            'turf' => 'turfs'
-        )
-    );
-
-    /**
-     * Singular inflector rules
-     *
-     * @var array
-     */
-    private static $singular = array(
-        'rules' => array(
-            '/(s)tatuses$/i' => '\1\2tatus',
-            '/^(.*)(menu)s$/i' => '\1\2',
-            '/(quiz)zes$/i' => '\\1',
-            '/(matr)ices$/i' => '\1ix',
-            '/(vert|ind)ices$/i' => '\1ex',
-            '/^(ox)en/i' => '\1',
-            '/(alias)(es)*$/i' => '\1',
-            '/(alumn|bacill|cact|foc|fung|nucle|radi|stimul|syllab|termin|viri?)i$/i' => '\1us',
-            '/([ftw]ax)es/i' => '\1',
-            '/(cris|ax|test)es$/i' => '\1is',
-            '/(shoe|slave)s$/i' => '\1',
-            '/(o)es$/i' => '\1',
-            '/ouses$/' => 'ouse',
-            '/([^a])uses$/' => '\1us',
-            '/([m|l])ice$/i' => '\1ouse',
-            '/(x|ch|ss|sh)es$/i' => '\1',
-            '/(m)ovies$/i' => '\1\2ovie',
-            '/(s)eries$/i' => '\1\2eries',
-            '/([^aeiouy]|qu)ies$/i' => '\1y',
-            '/([lr])ves$/i' => '\1f',
-            '/(tive)s$/i' => '\1',
-            '/(hive)s$/i' => '\1',
-            '/(drive)s$/i' => '\1',
-            '/([^fo])ves$/i' => '\1fe',
-            '/(^analy)ses$/i' => '\1sis',
-            '/(analy|diagno|^ba|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$/i' => '\1\2sis',
-            '/([ti])a$/i' => '\1um',
-            '/(p)eople$/i' => '\1\2erson',
-            '/(m)en$/i' => '\1an',
-            '/(c)hildren$/i' => '\1\2hild',
-            '/(n)ews$/i' => '\1\2ews',
-            '/eaus$/' => 'eau',
-            '/^(.*us)$/' => '\\1',
-            '/s$/i' => ''
-        ),
-        'uninflected' => array(
-            '.*[nrlm]ese', '.*deer', '.*fish', '.*measles', '.*ois', '.*pox', '.*sheep', '.*ss'
-        ),
-        'irregular' => array(
-            'foes' => 'foe',
-            'waves' => 'wave',
-            'curves' => 'curve'
-        )
-    );
-
-    /**
-     * Words that should not be inflected
-     *
-     * @var array
-     */
-    private static $uninflected = array(
-        'Amoyese', 'bison', 'Borghese', 'bream', 'breeches', 'britches', 'buffalo', 'cantus',
-        'carp', 'chassis', 'clippers', 'cod', 'coitus', 'Congoese', 'contretemps', 'corps',
-        'debris', 'diabetes', 'djinn', 'eland', 'elk', 'equipment', 'Faroese', 'flounder',
-        'Foochowese', 'gallows', 'Genevese', 'Genoese', 'Gilbertese', 'graffiti',
-        'headquarters', 'herpes', 'hijinks', 'Hottentotese', 'information', 'innings',
-        'jackanapes', 'Kiplingese', 'Kongoese', 'Lucchese', 'mackerel', 'Maltese', '.*?media',
-        'mews', 'moose', 'mumps', 'Nankingese', 'news', 'nexus', 'Niasese',
-        'Pekingese', 'Piedmontese', 'pincers', 'Pistoiese', 'pliers', 'Portuguese',
-        'proceedings', 'rabies', 'rice', 'rhinoceros', 'salmon', 'Sarawakese', 'scissors',
-        'sea[- ]bass', 'series', 'Shavese', 'shears', 'siemens', 'species', 'swine', 'testes',
-        'trousers', 'trout', 'tuna', 'Vermontese', 'Wenchowese', 'whiting', 'wildebeest',
-        'Yengeese'
-    );
-
-    /**
-     * Method cache array.
-     *
-     * @var array
-     */
-    private static $cache = array();
-
-    /**
-     * The initial state of Inflector so reset() works.
-     *
-     * @var array
-     */
-    private static $initialState = array();
-
-    /**
-     * Convert word in to the format for a Doctrine table name. Converts 'ModelName' to 'model_name'
-     *
-     * @param  string $word  Word to tableize
-     * @return string $word  Tableized word
-     */
-    public static function tableize($word)
-    {
-        return strtolower(preg_replace('~(?<=\\w)([A-Z])~', '_$1', $word));
-    }
-
-    /**
-     * Convert a word in to the format for a Doctrine class name. Converts 'table_name' to 'TableName'
-     *
-     * @param string  $word  Word to classify
-     * @return string $word  Classified word
-     */
-    public static function classify($word)
-    {
-        return str_replace(" ", "", ucwords(strtr($word, "_-", "  ")));
-    }
-
-    /**
-     * Camelize a word. This uses the classify() method and turns the first character to lowercase
-     *
-     * @param string $word
-     * @return string $word
-     */
-    public static function camelize($word)
-    {
-        return lcfirst(self::classify($word));
-    }
-
-    /**
-     * Clears Inflectors inflected value caches. And resets the inflection
-     * rules to the initial values.
-     *
-     * @return void
-     */
-    public static function reset()
-    {
-        if (empty(self::$initialState)) {
-            self::$initialState = get_class_vars('Inflector');
-            return;
-        }
-        foreach (self::$initialState as $key => $val) {
-            if ($key != 'initialState') {
-                self::${$key} = $val;
-            }
-        }
-    }
-
-    /**
-     * Adds custom inflection $rules, of either 'plural' or 'singular' $type.
-     *
-     * ### Usage:
-     *
-     * {{{
-     * Inflector::rules('plural', array('/^(inflect)or$/i' => '\1ables'));
-     * Inflector::rules('plural', array(
-     *     'rules' => array('/^(inflect)ors$/i' => '\1ables'),
-     *     'uninflected' => array('dontinflectme'),
-     *     'irregular' => array('red' => 'redlings')
-     * ));
-     * }}}
-     *
-     * @param string $type The type of inflection, either 'plural' or 'singular'
-     * @param array $rules Array of rules to be added.
-     * @param boolean $reset If true, will unset default inflections for all
-     *        new rules that are being defined in $rules.
-     * @return void
-     */
-    public static function rules($type, $rules, $reset = false)
-    {
-        foreach ($rules as $rule => $pattern) {
-            if (is_array($pattern)) {
-                if ($reset) {
-                    self::${$type}[$rule] = $pattern;
-                } else {
-                    if ($rule === 'uninflected') {
-                        self::${$type}[$rule] = array_merge($pattern, self::${$type}[$rule]);
-                    } else {
-                        self::${$type}[$rule] = $pattern + self::${$type}[$rule];
-                    }
-                }
-                unset($rules[$rule], self::${$type}['cache' . ucfirst($rule)]);
-                if (isset(self::${$type}['merged'][$rule])) {
-                    unset(self::${$type}['merged'][$rule]);
-                }
-                if ($type === 'plural') {
-                    self::$cache['pluralize'] = self::$cache['tableize'] = array();
-                } elseif ($type === 'singular') {
-                    self::$cache['singularize'] = array();
-                }
-            }
-        }
-        self::${$type}['rules'] = $rules + self::${$type}['rules'];
-    }
-
-    /**
-     * Return $word in plural form.
-     *
-     * @param string $word Word in singular
-     * @return string Word in plural
-     */
-    public static function pluralize($word)
-    {
-        if (isset(self::$cache['pluralize'][$word])) {
-            return self::$cache['pluralize'][$word];
-        }
-
-        if (!isset(self::$plural['merged']['irregular'])) {
-            self::$plural['merged']['irregular'] = self::$plural['irregular'];
-        }
-
-        if (!isset(self::$plural['merged']['uninflected'])) {
-            self::$plural['merged']['uninflected'] = array_merge(self::$plural['uninflected'], self::$uninflected);
-        }
-
-        if (!isset(self::$plural['cacheUninflected']) || !isset(self::$plural['cacheIrregular'])) {
-            self::$plural['cacheUninflected'] = '(?:' . implode('|', self::$plural['merged']['uninflected']) . ')';
-            self::$plural['cacheIrregular'] = '(?:' . implode('|', array_keys(self::$plural['merged']['irregular'])) . ')';
-        }
-
-        if (preg_match('/(.*)\\b(' . self::$plural['cacheIrregular'] . ')$/i', $word, $regs)) {
-            self::$cache['pluralize'][$word] = $regs[1] . substr($word, 0, 1) . substr(self::$plural['merged']['irregular'][strtolower($regs[2])], 1);
-            return self::$cache['pluralize'][$word];
-        }
-
-        if (preg_match('/^(' . self::$plural['cacheUninflected'] . ')$/i', $word, $regs)) {
-            self::$cache['pluralize'][$word] = $word;
-            return $word;
-        }
-
-        foreach (self::$plural['rules'] as $rule => $replacement) {
-            if (preg_match($rule, $word)) {
-                self::$cache['pluralize'][$word] = preg_replace($rule, $replacement, $word);
-                return self::$cache['pluralize'][$word];
-            }
-        }
-    }
-
-    /**
-     * Return $word in singular form.
-     *
-     * @param string $word Word in plural
-     * @return string Word in singular
-     */
-    public static function singularize($word)
-    {
-        if (isset(self::$cache['singularize'][$word])) {
-            return self::$cache['singularize'][$word];
-        }
-
-        if (!isset(self::$singular['merged']['uninflected'])) {
-            self::$singular['merged']['uninflected'] = array_merge(
-                self::$singular['uninflected'],
-                self::$uninflected
-            );
-        }
-
-        if (!isset(self::$singular['merged']['irregular'])) {
-            self::$singular['merged']['irregular'] = array_merge(
-                self::$singular['irregular'],
-                array_flip(self::$plural['irregular'])
-            );
-        }
-
-        if (!isset(self::$singular['cacheUninflected']) || !isset(self::$singular['cacheIrregular'])) {
-            self::$singular['cacheUninflected'] = '(?:' . join('|', self::$singular['merged']['uninflected']) . ')';
-            self::$singular['cacheIrregular'] = '(?:' . join('|', array_keys(self::$singular['merged']['irregular'])) . ')';
-        }
-
-        if (preg_match('/(.*)\\b(' . self::$singular['cacheIrregular'] . ')$/i', $word, $regs)) {
-            self::$cache['singularize'][$word] = $regs[1] . substr($word, 0, 1) . substr(self::$singular['merged']['irregular'][strtolower($regs[2])], 1);
-            return self::$cache['singularize'][$word];
-        }
-
-        if (preg_match('/^(' . self::$singular['cacheUninflected'] . ')$/i', $word, $regs)) {
-            self::$cache['singularize'][$word] = $word;
-            return $word;
-        }
-
-        foreach (self::$singular['rules'] as $rule => $replacement) {
-            if (preg_match($rule, $word)) {
-                self::$cache['singularize'][$word] = preg_replace($rule, $replacement, $word);
-                return self::$cache['singularize'][$word];
-            }
-        }
-        self::$cache['singularize'][$word] = $word;
-        return $word;
-    }
-}
diff --git a/core/vendor/doctrine/inflector/phpunit.xml.dist b/core/vendor/doctrine/inflector/phpunit.xml.dist
deleted file mode 100644
index ef07faa..0000000
--- a/core/vendor/doctrine/inflector/phpunit.xml.dist
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<phpunit backupGlobals="false"
-         backupStaticAttributes="false"
-         colors="true"
-         convertErrorsToExceptions="true"
-         convertNoticesToExceptions="true"
-         convertWarningsToExceptions="true"
-         processIsolation="false"
-         stopOnFailure="false"
-         syntaxCheck="false"
-         bootstrap="./tests/Doctrine/Tests/TestInit.php"
->
-    <testsuites>
-        <testsuite name="Doctrine Inflector Test Suite">
-            <directory>./tests/Doctrine/</directory>
-        </testsuite>
-    </testsuites>
-
-    <filter>
-        <whitelist>
-            <directory>./lib/Doctrine/</directory>
-        </whitelist>
-    </filter>
-    
-    <groups>
-        <exclude>
-            <group>performance</group>
-        </exclude>
-    </groups>
-</phpunit>
diff --git a/core/vendor/doctrine/inflector/tests/Doctrine/Tests/Common/Inflector/InflectorTest.php b/core/vendor/doctrine/inflector/tests/Doctrine/Tests/Common/Inflector/InflectorTest.php
deleted file mode 100644
index 487c2cd..0000000
--- a/core/vendor/doctrine/inflector/tests/Doctrine/Tests/Common/Inflector/InflectorTest.php
+++ /dev/null
@@ -1,185 +0,0 @@
-<?php
-
-namespace Doctrine\Tests\Common\Inflector;
-
-use Doctrine\Tests\DoctrineTestCase;
-use Doctrine\Common\Inflector\Inflector;
-
-class InflectorTest extends DoctrineTestCase
-{
-
-    /**
-     * Singular & Plural test data. Returns an array of sample words.
-     *
-     * @return array
-     */ 
-    public function dataSampleWords() {
-        Inflector::reset();
-        // in the format array('singular', 'plural') 
-        return array(
-            array('categoria', 'categorias'),
-            array('house', 'houses'),
-            array('powerhouse', 'powerhouses'),
-            array('Bus', 'Buses'),
-            array('bus', 'buses'),
-            array('menu', 'menus'),
-            array('news', 'news'),
-            array('food_menu', 'food_menus'),
-            array('Menu', 'Menus'),
-            array('FoodMenu', 'FoodMenus'),
-            array('quiz', 'quizzes'),
-            array('matrix_row', 'matrix_rows'),
-            array('matrix', 'matrices'),
-            array('vertex', 'vertices'),
-            array('index', 'indices'),
-            array('Alias', 'Aliases'),
-            array('Media', 'Media'),
-            array('NodeMedia', 'NodeMedia'),
-            array('alumnus', 'alumni'),
-            array('bacillus', 'bacilli'),
-            array('cactus', 'cacti'),
-            array('focus', 'foci'),
-            array('fungus', 'fungi'),
-            array('nucleus', 'nuclei'),
-            array('octopus', 'octopuses'),
-            array('radius', 'radii'),
-            array('stimulus', 'stimuli'),
-            array('syllabus', 'syllabi'),
-            array('terminus', 'termini'),
-            array('virus', 'viri'),
-            array('person', 'people'),
-            array('glove', 'gloves'),
-            array('crisis', 'crises'),
-            array('tax', 'taxes'),
-            array('wave', 'waves'),
-            array('bureau', 'bureaus'),
-            array('cafe', 'cafes'),
-            array('roof', 'roofs'),
-            array('foe', 'foes'),
-            array('cookie', 'cookies'),
-            array('', ''),
-        );
-    }
-
-    /**
-     * testInflectingSingulars method
-     *
-     * @dataProvider dataSampleWords
-     * @return void
-     */
-    public function testInflectingSingulars($singular, $plural) {
-        $this->assertEquals($singular, Inflector::singularize($plural), "'$plural' should be singularized to '$singular'");
-    }
-
-    /**
-     * testInflectingPlurals method
-     *
-     * @dataProvider dataSampleWords
-     * @return void
-     */
-    public function testInflectingPlurals($singular, $plural) {
-        $this->assertEquals($plural, Inflector::pluralize($singular), "'$singular' should be pluralized to '$plural'");
-    }
-
-    /**
-     * testCustomPluralRule method
-     *
-     * @return void
-     */
-    public function testCustomPluralRule() {
-        Inflector::reset();
-        Inflector::rules('plural', array('/^(custom)$/i' => '\1izables'));
-        $this->assertEquals(Inflector::pluralize('custom'), 'customizables');
-
-        Inflector::rules('plural', array('uninflected' => array('uninflectable')));
-        $this->assertEquals(Inflector::pluralize('uninflectable'), 'uninflectable');
-
-        Inflector::rules('plural', array(
-            'rules' => array('/^(alert)$/i' => '\1ables'),
-            'uninflected' => array('noflect', 'abtuse'),
-            'irregular' => array('amaze' => 'amazable', 'phone' => 'phonezes')
-        ));
-        $this->assertEquals(Inflector::pluralize('noflect'), 'noflect');
-        $this->assertEquals(Inflector::pluralize('abtuse'), 'abtuse');
-        $this->assertEquals(Inflector::pluralize('alert'), 'alertables');
-        $this->assertEquals(Inflector::pluralize('amaze'), 'amazable');
-        $this->assertEquals(Inflector::pluralize('phone'), 'phonezes');
-    }
-
-    /**
-     * testCustomSingularRule method
-     *
-     * @return void
-     */
-    public function testCustomSingularRule() {
-        Inflector::reset();
-        Inflector::rules('singular', array('/(eple)r$/i' => '\1', '/(jente)r$/i' => '\1'));
-
-        $this->assertEquals(Inflector::singularize('epler'), 'eple');
-        $this->assertEquals(Inflector::singularize('jenter'), 'jente');
-
-        Inflector::rules('singular', array(
-            'rules' => array('/^(bil)er$/i' => '\1', '/^(inflec|contribu)tors$/i' => '\1ta'),
-            'uninflected' => array('singulars'),
-            'irregular' => array('spins' => 'spinor')
-        ));
-
-        $this->assertEquals(Inflector::singularize('inflectors'), 'inflecta');
-        $this->assertEquals(Inflector::singularize('contributors'), 'contributa');
-        $this->assertEquals(Inflector::singularize('spins'), 'spinor');
-        $this->assertEquals(Inflector::singularize('singulars'), 'singulars');
-    }
-
-    /**
-     * test that setting new rules clears the inflector caches.
-     *
-     * @return void
-     */
-    public function testRulesClearsCaches() {
-        Inflector::reset();
-        $this->assertEquals(Inflector::singularize('Bananas'), 'Banana');
-        $this->assertEquals(Inflector::pluralize('Banana'), 'Bananas');
-
-        Inflector::rules('singular', array(
-            'rules' => array('/(.*)nas$/i' => '\1zzz')
-        ));
-        $this->assertEquals('Banazzz', Inflector::singularize('Bananas'), 'Was inflected with old rules.');
-
-        Inflector::rules('plural', array(
-            'rules' => array('/(.*)na$/i' => '\1zzz'),
-            'irregular' => array('corpus' => 'corpora')
-        ));
-        $this->assertEquals(Inflector::pluralize('Banana'), 'Banazzz', 'Was inflected with old rules.');
-        $this->assertEquals(Inflector::pluralize('corpus'), 'corpora', 'Was inflected with old irregular form.');
-    }
-
-    /**
-     * Test resetting inflection rules.
-     *
-     * @return void
-     */
-    public function testCustomRuleWithReset() {
-        Inflector::reset();
-        $uninflected = array('atlas', 'lapis', 'onibus', 'pires', 'virus', '.*x');
-        $pluralIrregular = array('as' => 'ases');
-
-        Inflector::rules('singular', array(
-            'rules' => array('/^(.*)(a|e|o|u)is$/i' => '\1\2l'),
-            'uninflected' => $uninflected,
-        ), true);
-
-        Inflector::rules('plural', array(
-            'rules' => array(
-                '/^(.*)(a|e|o|u)l$/i' => '\1\2is',
-            ),
-            'uninflected' => $uninflected,
-            'irregular' => $pluralIrregular
-        ), true);
-
-        $this->assertEquals(Inflector::pluralize('Alcool'), 'Alcoois');
-        $this->assertEquals(Inflector::pluralize('Atlas'), 'Atlas');
-        $this->assertEquals(Inflector::singularize('Alcoois'), 'Alcool');
-        $this->assertEquals(Inflector::singularize('Atlas'), 'Atlas');
-    }
-}
-
diff --git a/core/vendor/doctrine/inflector/tests/Doctrine/Tests/DoctrineTestCase.php b/core/vendor/doctrine/inflector/tests/Doctrine/Tests/DoctrineTestCase.php
deleted file mode 100644
index e8323d2..0000000
--- a/core/vendor/doctrine/inflector/tests/Doctrine/Tests/DoctrineTestCase.php
+++ /dev/null
@@ -1,10 +0,0 @@
-<?php
-
-namespace Doctrine\Tests;
-
-/**
- * Base testcase class for all Doctrine testcases.
- */
-abstract class DoctrineTestCase extends \PHPUnit_Framework_TestCase
-{
-}
\ No newline at end of file
diff --git a/core/vendor/doctrine/inflector/tests/Doctrine/Tests/TestInit.php b/core/vendor/doctrine/inflector/tests/Doctrine/Tests/TestInit.php
deleted file mode 100644
index ead2e30..0000000
--- a/core/vendor/doctrine/inflector/tests/Doctrine/Tests/TestInit.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-/*
- * This file bootstraps the test environment.
- */
-namespace Doctrine\Tests;
-
-error_reporting(E_ALL | E_STRICT);
-
-// register silently failing autoloader
-spl_autoload_register(function($class)
-{
-    if (0 === strpos($class, 'Doctrine\Tests\\')) {
-        $path = __DIR__.'/../../'.strtr($class, '\\', '/').'.php';
-        if (is_file($path) && is_readable($path)) {
-            require_once $path;
-
-            return true;
-        }
-    } else if (0 === strpos($class, 'Doctrine\Common\\')) {
-        $path = __DIR__.'/../../../lib/'.($class = strtr($class, '\\', '/')).'.php';
-        if (is_file($path) && is_readable($path)) {
-            require_once $path;
-
-            return true;
-        }
-    }
-});