diff --git a/core/composer.json b/core/composer.json
index 75814e2..0f92ce3 100644
--- a/core/composer.json
+++ b/core/composer.json
@@ -35,7 +35,9 @@
     "fabpot/goutte": "^2.0.3",
     "masterminds/html5": "~2.1",
     "symfony/psr-http-message-bridge": "v0.2",
-    "zendframework/zend-diactoros": "1.1.0"
+    "zendframework/zend-diactoros": "1.1.0",
+    "composer/composer": "^1.0@dev",
+    "crell/api-problem": "^1.7@dev"
   },
   "replace": {
     "drupal/action": "self.version",
diff --git a/core/composer.lock b/core/composer.lock
index 49c5581..96509ab 100644
--- a/core/composer.lock
+++ b/core/composer.lock
@@ -4,7 +4,7 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
         "This file is @generated automatically"
     ],
-    "hash": "a842b991264d42a2f8c5cecbd82597b1",
+    "hash": "a455a2443dcd139dd07dd61d652a7106",
     "packages": [
         {
             "name": "behat/mink",
@@ -169,6 +169,122 @@
             "time": "2014-10-09 09:21:12"
         },
         {
+            "name": "composer/composer",
+            "version": "1.0.0-alpha10",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/composer/composer.git",
+                "reference": "775f6cd5c633facf2e7b99611fdcaa900b58ddb7"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/composer/composer/zipball/775f6cd5c633facf2e7b99611fdcaa900b58ddb7",
+                "reference": "775f6cd5c633facf2e7b99611fdcaa900b58ddb7",
+                "shasum": ""
+            },
+            "require": {
+                "justinrainbow/json-schema": "~1.4",
+                "php": ">=5.3.2",
+                "seld/jsonlint": "~1.0",
+                "symfony/console": "~2.5",
+                "symfony/finder": "~2.2",
+                "symfony/process": "~2.1"
+            },
+            "require-dev": {
+                "phpunit/phpunit": "~4.5"
+            },
+            "suggest": {
+                "ext-openssl": "Enabling the openssl extension allows you to access https URLs for repositories and packages",
+                "ext-zip": "Enabling the zip extension allows you to unzip archives, and allows gzip compression of all internet traffic"
+            },
+            "bin": [
+                "bin/composer"
+            ],
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.0-dev"
+                }
+            },
+            "autoload": {
+                "psr-0": {
+                    "Composer": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Nils Adermann",
+                    "email": "naderman@naderman.de",
+                    "homepage": "http://www.naderman.de"
+                },
+                {
+                    "name": "Jordi Boggiano",
+                    "email": "j.boggiano@seld.be",
+                    "homepage": "http://seld.be"
+                }
+            ],
+            "description": "Composer helps you declare, manage and install dependencies of PHP projects, ensuring you have the right stack everywhere.",
+            "homepage": "http://getcomposer.org/",
+            "keywords": [
+                "autoload",
+                "dependency",
+                "package"
+            ],
+            "time": "2015-04-14 21:18:51"
+        },
+        {
+            "name": "crell/api-problem",
+            "version": "1.7",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/Crell/ApiProblem.git",
+                "reference": "5e871a0f6804417c2cc516d67a73607bc3f12d5f"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/Crell/ApiProblem/zipball/5e871a0f6804417c2cc516d67a73607bc3f12d5f",
+                "reference": "5e871a0f6804417c2cc516d67a73607bc3f12d5f",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.3.3"
+            },
+            "require-dev": {
+                "phpunit/phpunit": "3.7.*"
+            },
+            "type": "library",
+            "autoload": {
+                "psr-4": {
+                    "Crell\\ApiProblem\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Larry Garfield",
+                    "email": "larry@garfieldtech.com",
+                    "homepage": "http://www.garfieldtech.com/"
+                }
+            ],
+            "description": "PHP wrapper for the api-problem IETF specification",
+            "homepage": "https://github.com/Crell/ApiProblem",
+            "keywords": [
+                "api-problem",
+                "http",
+                "json",
+                "rest",
+                "xml"
+            ],
+            "time": "2014-10-07 17:43:34"
+        },
+        {
             "name": "doctrine/annotations",
             "version": "v1.2.1",
             "source": {
@@ -946,6 +1062,72 @@
             "time": "2014-10-12 19:18:40"
         },
         {
+            "name": "justinrainbow/json-schema",
+            "version": "1.4.4",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/justinrainbow/json-schema.git",
+                "reference": "8dc9b9d85ab639ca60ab4608b34c1279d6ae7bce"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/8dc9b9d85ab639ca60ab4608b34c1279d6ae7bce",
+                "reference": "8dc9b9d85ab639ca60ab4608b34c1279d6ae7bce",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.3.2"
+            },
+            "require-dev": {
+                "json-schema/json-schema-test-suite": "1.1.0",
+                "phpdocumentor/phpdocumentor": "~2",
+                "phpunit/phpunit": "~3.7"
+            },
+            "bin": [
+                "bin/validate-json"
+            ],
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.4.x-dev"
+                }
+            },
+            "autoload": {
+                "psr-0": {
+                    "JsonSchema": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "BSD-3-Clause"
+            ],
+            "authors": [
+                {
+                    "name": "Bruno Prieto Reis",
+                    "email": "bruno.p.reis@gmail.com"
+                },
+                {
+                    "name": "Justin Rainbow",
+                    "email": "justin.rainbow@gmail.com"
+                },
+                {
+                    "name": "Igor Wiedler",
+                    "email": "igor@wiedler.ch"
+                },
+                {
+                    "name": "Robert Schönthal",
+                    "email": "seroscho@googlemail.com"
+                }
+            ],
+            "description": "A library to validate a json schema.",
+            "homepage": "https://github.com/justinrainbow/json-schema",
+            "keywords": [
+                "json",
+                "schema"
+            ],
+            "time": "2015-07-14 16:29:50"
+        },
+        {
             "name": "masterminds/html5",
             "version": "2.1.0",
             "source": {
@@ -2089,6 +2271,52 @@
             "time": "2015-02-24 06:35:25"
         },
         {
+            "name": "seld/jsonlint",
+            "version": "1.3.1",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/Seldaek/jsonlint.git",
+                "reference": "863ae85c6d3ef60ca49cb12bd051c4a0648c40c4"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/863ae85c6d3ef60ca49cb12bd051c4a0648c40c4",
+                "reference": "863ae85c6d3ef60ca49cb12bd051c4a0648c40c4",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.3.0"
+            },
+            "bin": [
+                "bin/jsonlint"
+            ],
+            "type": "library",
+            "autoload": {
+                "psr-4": {
+                    "Seld\\JsonLint\\": "src/Seld/JsonLint/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Jordi Boggiano",
+                    "email": "j.boggiano@seld.be",
+                    "homepage": "http://seld.be"
+                }
+            ],
+            "description": "JSON Linter",
+            "keywords": [
+                "json",
+                "linter",
+                "parser",
+                "validator"
+            ],
+            "time": "2015-01-04 21:18:15"
+        },
+        {
             "name": "stack/builder",
             "version": "v1.0.2",
             "source": {
@@ -2642,6 +2870,55 @@
             "time": "2015-06-18 19:21:56"
         },
         {
+            "name": "symfony/finder",
+            "version": "v2.7.2",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/symfony/Finder.git",
+                "reference": "ae0f363277485094edc04c9f3cbe595b183b78e4"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/symfony/Finder/zipball/ae0f363277485094edc04c9f3cbe595b183b78e4",
+                "reference": "ae0f363277485094edc04c9f3cbe595b183b78e4",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.3.9"
+            },
+            "require-dev": {
+                "symfony/phpunit-bridge": "~2.7"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "2.7-dev"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Symfony\\Component\\Finder\\": ""
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Fabien Potencier",
+                    "email": "fabien@symfony.com"
+                },
+                {
+                    "name": "Symfony Community",
+                    "homepage": "https://symfony.com/contributors"
+                }
+            ],
+            "description": "Symfony Finder Component",
+            "homepage": "https://symfony.com",
+            "time": "2015-07-09 16:07:40"
+        },
+        {
             "name": "symfony/http-foundation",
             "version": "v2.7.2",
             "source": {
@@ -3449,7 +3726,10 @@
     "packages-dev": [],
     "aliases": [],
     "minimum-stability": "dev",
-    "stability-flags": [],
+    "stability-flags": {
+        "composer/composer": 20,
+        "crell/api-problem": 20
+    },
     "prefer-stable": true,
     "prefer-lowest": false,
     "platform": {
diff --git a/core/modules/composer_dependency/composer.json b/core/modules/composer_dependency/composer.json
new file mode 100644
index 0000000..3b02fcf
--- /dev/null
+++ b/core/modules/composer_dependency/composer.json
@@ -0,0 +1,16 @@
+{
+    "name": "drupal/composer_dependency",
+    "version": "8.0.0",
+    "description": "A module that does stuff.",
+    "type": "drupal-module",
+    "license": "GPL-2.0+",
+    "authors": [
+        {
+            "name": "Paul Mitchum",
+            "email": "paul@mile23.com"
+        }
+    ],
+    "require": {
+        "crell/api-problem": "1.7"
+    }
+}
diff --git a/core/modules/composer_dependency/composer_dependency.info.yml b/core/modules/composer_dependency/composer_dependency.info.yml
new file mode 100644
index 0000000..cef5e88
--- /dev/null
+++ b/core/modules/composer_dependency/composer_dependency.info.yml
@@ -0,0 +1,6 @@
+name: Composer Dependency
+type: module
+description: 'Determines whether Composer-based dependencies are met.'
+package: Core
+version: VERSION
+core: 8.x
diff --git a/core/modules/composer_dependency/composer_dependency.install b/core/modules/composer_dependency/composer_dependency.install
new file mode 100644
index 0000000..c4b7e39
--- /dev/null
+++ b/core/modules/composer_dependency/composer_dependency.install
@@ -0,0 +1,85 @@
+<?php
+
+/**
+ * @file
+ * Install, update and uninstall functions for the book module.
+ */
+
+use Composer\Json\JsonFile;
+
+/**
+ * Implements hook_requirements().
+ */
+function composer_dependency_requirements($phase) {
+  // During the install phase, make it impossible to install a module which has
+  // Composer-based dependencies if Composer is not installed as a dependency.
+  if ($phase == 'install') {
+    // During the install phase, we won't have the drupal_repository service
+    // available, so we must create our own. Also, Drupal hasn't told the class
+    // loader about our classes, so we have to manually load the factory.
+    require_once __DIR__ . '/src/DrupalRepositoryFactory.php';
+    $factory = new Drupal\composer_dependency\DrupalRepositoryFactory(\Drupal::root());
+    try {
+      $drupal_dependencies = $factory->getDrupalRepository();
+    }
+    catch (\RuntimeException $e) {
+      $requirements['composer_dependency'] = array(
+        'title' => t('Composer is not present.'),
+        'severity' => REQUIREMENT_ERROR,
+        'description' => $e->getMessage(),
+      );
+      return $requirements;
+    }
+  }
+  if ($phase == 'runtime') {
+    $drupal_dependencies = NULL;
+    try {
+      $drupal_dependencies = \Drupal::service('composer_dependency.drupal_respository');
+    }
+    catch (\RuntimeException $e) {
+      $requirements['composer_dependency'] = array(
+        'title' => t('Composer is not present.'),
+        'severity' => REQUIREMENT_ERROR,
+        'description' => $e->getMessage(),
+      );
+      return $requirements;
+    }
+    if ($drupal_dependencies) {
+      // Composer is installed as a dependency.
+      // Discover all composer.json files.
+      $composer_paths = [];
+      $module_handler = \Drupal::moduleHandler();
+      $module_list = $module_handler->getModuleList();
+      foreach ($module_list as $name => $module) {
+        $path = $module->getPath() . '/composer.json';
+        if (file_exists($path)) {
+          $composer_paths[$name] = $path;
+        }
+      }
+      // Determine if our requirements are met.
+      $unmet_dependencies = [];
+      foreach ($composer_paths as $name => $json_path) {
+        $json_file = new JsonFile($json_path);
+        if (!$drupal_dependencies->areDependenciesMet($json_file)) {
+          $unmet_dependencies[] = $name;
+        }
+      }
+      if (count($unmet_dependencies)) {
+        $requirements['composer_dependency'] = array(
+          'title' => t('Composer is present.'),
+          'severity' => REQUIREMENT_ERROR,
+          'description' => t('Composer dependencies are missing for: ') . implode(', ', $unmet_dependencies) . '. There are currently no instructions for how to solve this.',
+        );
+        return $requirements;
+      }
+
+      $modules = implode(', ', array_keys($composer_paths));
+      $requirements['composer_dependency'] = array(
+        'title' => t('Composer is present.'),
+        'severity' => REQUIREMENT_INFO,
+        'description' => t('Composer dependencies are met for: ') . $modules,
+      );
+    }
+  }
+  return $requirements;
+}
diff --git a/core/modules/composer_dependency/composer_dependency.module b/core/modules/composer_dependency/composer_dependency.module
new file mode 100644
index 0000000..07e00de
--- /dev/null
+++ b/core/modules/composer_dependency/composer_dependency.module
@@ -0,0 +1,33 @@
+<?php
+
+/**
+ * @file
+ * Empty .module file for composer_dependency.
+ *
+ * Other modules can declare their dependence on this one, and it will determine
+ * whether Composer-based dependencies are met.
+ *
+ * You declare Composer-based dependencies for your module by adding a
+ * composer.json file to the top-level directory of your module. This is a
+ * plain-vanilla composer.json file.
+ *
+ * You should then have your module declare its dependency on this one.
+ *
+ * This module does not give you a way to manage these dependencies; it only
+ * checks whether they are met.
+ *
+ * Since this module uses the Composer package itself to determine whether
+ * dependencie are met, it will fail to install if Composer is not installed as
+ * a dependency of Drupal. This will cause modules which depend on it to also
+ * fail to install.
+ *
+ * You can fix this dependency problem from the command line, like this:
+ * @code
+ * cd core
+ * composer require composer/composer
+ * @endcode
+ *
+ * After this basic dependency is met, you can try to install the module again,
+ * and then visit your site's status page to determine whether other
+ * Composer-based dependencies are sill unmet.
+ */
diff --git a/core/modules/composer_dependency/composer_dependency.services.yml b/core/modules/composer_dependency/composer_dependency.services.yml
new file mode 100644
index 0000000..64cbf57
--- /dev/null
+++ b/core/modules/composer_dependency/composer_dependency.services.yml
@@ -0,0 +1,9 @@
+services:
+    composer_dependency.drupal_respository:
+        class: Drupal\composer_dependency\DrupalRepository
+        factory: composer_dependency.drupal_respository.factory:getDrupalRepository
+        tags:
+          - { name: parameter_service }
+    composer_dependency.drupal_respository.factory:
+        class: Drupal\composer_dependency\DrupalRepositoryFactory
+        arguments: ['@app.root']
diff --git a/core/modules/composer_dependency/src/DrupalRepository.php b/core/modules/composer_dependency/src/DrupalRepository.php
new file mode 100644
index 0000000..49fe707
--- /dev/null
+++ b/core/modules/composer_dependency/src/DrupalRepository.php
@@ -0,0 +1,61 @@
+<?php
+
+/**
+ * @file
+ */
+
+namespace Drupal\composer_dependency;
+
+use Composer\Repository\InstalledFilesystemRepository;
+use Composer\Json\JsonFile;
+use Composer\Package\Loader\ArrayLoader;
+use Composer\Package\Loader\JsonLoader;
+use Composer\Package\Package;
+
+/**
+ * A service to query the Composer vendor repository for Drupal.
+ */
+class DrupalRepository extends InstalledFilesystemRepository {
+
+  /**
+   *
+   * @param string|SplString $app_root
+   */
+  public function __construct($app_root) {
+    $installed_json = (string) $app_root . '/core/vendor/composer/installed.json';
+    parent::__construct(new JsonFile($installed_json));
+  }
+
+  /**
+   * Determine whether a composer.json file depends on a package not present.
+   *
+   * Excludes require-dev (for now).
+   *
+   * @param JsonFile $json_file
+   *   A composer.json file, typically from a module.
+   *
+   * @return bool
+   *   TRUE if all dependencies in composer.json file are met. FALSE otherwise.
+   */
+  public function areDependenciesMet(JsonFile $json_file) {
+    // There has to be a better way to do this.
+    // Make a JSON loader to load JSON into our ArrayLoader.
+    $json_loader = new JsonLoader(new ArrayLoader());
+    // Load the JSON into a package.
+    $json_package = $json_loader->load($json_file);
+    // Get the array of requirements.
+    $requirements = $json_package->getRequires();
+    $unmet = [];
+    foreach ($requirements as $name => $link) {
+      // Each requirement is actually a Link object, which we must resolve into
+      // a package.
+      $package = new Package($link->getTarget(), $link->getConstraint(), $link->getPrettyConstraint());
+      // Finally ask the Drupal repo if it has this package.
+      if (!$this->findPackage($package->getName(), $package->getPrettyVersion())) {
+        $unmet[$name] = $package;
+      }
+    }
+    return count($unmet) ? FALSE : TRUE;
+  }
+
+}
diff --git a/core/modules/composer_dependency/src/DrupalRepositoryFactory.php b/core/modules/composer_dependency/src/DrupalRepositoryFactory.php
new file mode 100644
index 0000000..e4b6d374
--- /dev/null
+++ b/core/modules/composer_dependency/src/DrupalRepositoryFactory.php
@@ -0,0 +1,35 @@
+<?php
+
+/**
+ * @file
+ */
+
+namespace Drupal\composer_dependency;
+
+/**
+ * Factory class for the drupal_repository service.
+ */
+class DrupalRepositoryFactory {
+
+  protected $appRoot;
+
+  public function __construct($app_root) {
+    $this->appRoot = (string) $app_root;
+  }
+
+  public function getDrupalRepository() {
+    // We look for InstalledFilesystemRepository because it's the superclass of
+    // DrupalRepository.
+    if (!class_exists('\Composer\Repository\InstalledFilesystemRepository')) {
+      throw new \RuntimeException('Composer must be installed as a dependency before its services can be used.');
+    }
+    // We need to require DrupalRepository's PHP file because this method can be
+    // run during the install phase, and when Composer is not installed as a
+    // requirement. We can do this here because we know
+    // InstalledFilesystemRepository is available.
+    // @todo: Determine a better way to do this.
+    require_once __DIR__ . '/DrupalRepository.php';
+    return new DrupalRepository($this->appRoot);
+  }
+
+}
diff --git a/core/vendor/composer/autoload_namespaces.php b/core/vendor/composer/autoload_namespaces.php
index 6038288..d9c1383 100644
--- a/core/vendor/composer/autoload_namespaces.php
+++ b/core/vendor/composer/autoload_namespaces.php
@@ -12,6 +12,7 @@
     'Stack' => array($vendorDir . '/stack/builder/src'),
     'Psr\\Log\\' => array($vendorDir . '/psr/log'),
     'Prophecy\\' => array($vendorDir . '/phpspec/prophecy/src'),
+    'JsonSchema' => array($vendorDir . '/justinrainbow/json-schema/src'),
     'Gliph' => array($vendorDir . '/sdboyer/gliph/src'),
     'Egulias\\' => array($vendorDir . '/egulias/email-validator/src'),
     'EasyRdf_' => array($vendorDir . '/easyrdf/easyrdf/lib'),
@@ -22,5 +23,6 @@
     'Doctrine\\Common\\Cache\\' => array($vendorDir . '/doctrine/cache/lib'),
     'Doctrine\\Common\\Annotations\\' => array($vendorDir . '/doctrine/annotations/lib'),
     'Doctrine\\Common\\' => array($vendorDir . '/doctrine/common/lib'),
+    'Composer' => array($vendorDir . '/composer/composer/src'),
     'Behat\\Mink\\Driver' => array($vendorDir . '/behat/mink-browserkit-driver/src', $vendorDir . '/behat/mink-goutte-driver/src'),
 );
diff --git a/core/vendor/composer/autoload_psr4.php b/core/vendor/composer/autoload_psr4.php
index ba42634..98759d3 100644
--- a/core/vendor/composer/autoload_psr4.php
+++ b/core/vendor/composer/autoload_psr4.php
@@ -18,6 +18,7 @@
     'Symfony\\Component\\Process\\' => array($vendorDir . '/symfony/process'),
     'Symfony\\Component\\HttpKernel\\' => array($vendorDir . '/symfony/http-kernel'),
     'Symfony\\Component\\HttpFoundation\\' => array($vendorDir . '/symfony/http-foundation'),
+    'Symfony\\Component\\Finder\\' => array($vendorDir . '/symfony/finder'),
     'Symfony\\Component\\EventDispatcher\\' => array($vendorDir . '/symfony/event-dispatcher'),
     'Symfony\\Component\\DomCrawler\\' => array($vendorDir . '/symfony/dom-crawler'),
     'Symfony\\Component\\DependencyInjection\\' => array($vendorDir . '/symfony/dependency-injection'),
@@ -28,6 +29,7 @@
     'Symfony\\Component\\BrowserKit\\' => array($vendorDir . '/symfony/browser-kit'),
     'Symfony\\Cmf\\Component\\Routing\\' => array($vendorDir . '/symfony-cmf/routing'),
     'Symfony\\Bridge\\PsrHttpMessage\\' => array($vendorDir . '/symfony/psr-http-message-bridge'),
+    'Seld\\JsonLint\\' => array($vendorDir . '/seld/jsonlint/src/Seld/JsonLint'),
     'React\\Promise\\' => array($vendorDir . '/react/promise/src'),
     'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src'),
     'Masterminds\\' => array($vendorDir . '/masterminds/html5/src'),
@@ -38,5 +40,6 @@
     'Drupal\\Driver\\' => array($baseDir . '/../drivers/lib/Drupal/Driver'),
     'Drupal\\Core\\' => array($baseDir . '/lib/Drupal/Core'),
     'Drupal\\Component\\' => array($baseDir . '/lib/Drupal/Component'),
+    'Crell\\ApiProblem\\' => array($vendorDir . '/crell/api-problem/src'),
     'Behat\\Mink\\' => array($vendorDir . '/behat/mink/src'),
 );
diff --git a/core/vendor/composer/installed.json b/core/vendor/composer/installed.json
index d8f6af5..f0c5ccf 100644
--- a/core/vendor/composer/installed.json
+++ b/core/vendor/composer/installed.json
@@ -3561,5 +3561,292 @@
             "validation",
             "validator"
         ]
+    },
+    {
+        "name": "symfony/finder",
+        "version": "v2.7.2",
+        "version_normalized": "2.7.2.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/symfony/Finder.git",
+            "reference": "ae0f363277485094edc04c9f3cbe595b183b78e4"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/symfony/Finder/zipball/ae0f363277485094edc04c9f3cbe595b183b78e4",
+            "reference": "ae0f363277485094edc04c9f3cbe595b183b78e4",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.9"
+        },
+        "require-dev": {
+            "symfony/phpunit-bridge": "~2.7"
+        },
+        "time": "2015-07-09 16:07:40",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "2.7-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-4": {
+                "Symfony\\Component\\Finder\\": ""
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Fabien Potencier",
+                "email": "fabien@symfony.com"
+            },
+            {
+                "name": "Symfony Community",
+                "homepage": "https://symfony.com/contributors"
+            }
+        ],
+        "description": "Symfony Finder Component",
+        "homepage": "https://symfony.com"
+    },
+    {
+        "name": "seld/jsonlint",
+        "version": "1.3.1",
+        "version_normalized": "1.3.1.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/Seldaek/jsonlint.git",
+            "reference": "863ae85c6d3ef60ca49cb12bd051c4a0648c40c4"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/863ae85c6d3ef60ca49cb12bd051c4a0648c40c4",
+            "reference": "863ae85c6d3ef60ca49cb12bd051c4a0648c40c4",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.0"
+        },
+        "time": "2015-01-04 21:18:15",
+        "bin": [
+            "bin/jsonlint"
+        ],
+        "type": "library",
+        "installation-source": "dist",
+        "autoload": {
+            "psr-4": {
+                "Seld\\JsonLint\\": "src/Seld/JsonLint/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Jordi Boggiano",
+                "email": "j.boggiano@seld.be",
+                "homepage": "http://seld.be"
+            }
+        ],
+        "description": "JSON Linter",
+        "keywords": [
+            "json",
+            "linter",
+            "parser",
+            "validator"
+        ]
+    },
+    {
+        "name": "justinrainbow/json-schema",
+        "version": "1.4.4",
+        "version_normalized": "1.4.4.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/justinrainbow/json-schema.git",
+            "reference": "8dc9b9d85ab639ca60ab4608b34c1279d6ae7bce"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/8dc9b9d85ab639ca60ab4608b34c1279d6ae7bce",
+            "reference": "8dc9b9d85ab639ca60ab4608b34c1279d6ae7bce",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.2"
+        },
+        "require-dev": {
+            "json-schema/json-schema-test-suite": "1.1.0",
+            "phpdocumentor/phpdocumentor": "~2",
+            "phpunit/phpunit": "~3.7"
+        },
+        "time": "2015-07-14 16:29:50",
+        "bin": [
+            "bin/validate-json"
+        ],
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.4.x-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "JsonSchema": "src/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "BSD-3-Clause"
+        ],
+        "authors": [
+            {
+                "name": "Bruno Prieto Reis",
+                "email": "bruno.p.reis@gmail.com"
+            },
+            {
+                "name": "Justin Rainbow",
+                "email": "justin.rainbow@gmail.com"
+            },
+            {
+                "name": "Igor Wiedler",
+                "email": "igor@wiedler.ch"
+            },
+            {
+                "name": "Robert Schönthal",
+                "email": "seroscho@googlemail.com"
+            }
+        ],
+        "description": "A library to validate a json schema.",
+        "homepage": "https://github.com/justinrainbow/json-schema",
+        "keywords": [
+            "json",
+            "schema"
+        ]
+    },
+    {
+        "name": "composer/composer",
+        "version": "1.0.0-alpha10",
+        "version_normalized": "1.0.0.0-alpha10",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/composer/composer.git",
+            "reference": "775f6cd5c633facf2e7b99611fdcaa900b58ddb7"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/composer/composer/zipball/775f6cd5c633facf2e7b99611fdcaa900b58ddb7",
+            "reference": "775f6cd5c633facf2e7b99611fdcaa900b58ddb7",
+            "shasum": ""
+        },
+        "require": {
+            "justinrainbow/json-schema": "~1.4",
+            "php": ">=5.3.2",
+            "seld/jsonlint": "~1.0",
+            "symfony/console": "~2.5",
+            "symfony/finder": "~2.2",
+            "symfony/process": "~2.1"
+        },
+        "require-dev": {
+            "phpunit/phpunit": "~4.5"
+        },
+        "suggest": {
+            "ext-openssl": "Enabling the openssl extension allows you to access https URLs for repositories and packages",
+            "ext-zip": "Enabling the zip extension allows you to unzip archives, and allows gzip compression of all internet traffic"
+        },
+        "time": "2015-04-14 21:18:51",
+        "bin": [
+            "bin/composer"
+        ],
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.0-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-0": {
+                "Composer": "src/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Nils Adermann",
+                "email": "naderman@naderman.de",
+                "homepage": "http://www.naderman.de"
+            },
+            {
+                "name": "Jordi Boggiano",
+                "email": "j.boggiano@seld.be",
+                "homepage": "http://seld.be"
+            }
+        ],
+        "description": "Composer helps you declare, manage and install dependencies of PHP projects, ensuring you have the right stack everywhere.",
+        "homepage": "http://getcomposer.org/",
+        "keywords": [
+            "autoload",
+            "dependency",
+            "package"
+        ]
+    },
+    {
+        "name": "crell/api-problem",
+        "version": "1.7",
+        "version_normalized": "1.7.0.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/Crell/ApiProblem.git",
+            "reference": "5e871a0f6804417c2cc516d67a73607bc3f12d5f"
+        },
+        "dist": {
+            "type": "zip",
+            "url": "https://api.github.com/repos/Crell/ApiProblem/zipball/5e871a0f6804417c2cc516d67a73607bc3f12d5f",
+            "reference": "5e871a0f6804417c2cc516d67a73607bc3f12d5f",
+            "shasum": ""
+        },
+        "require": {
+            "php": ">=5.3.3"
+        },
+        "require-dev": {
+            "phpunit/phpunit": "3.7.*"
+        },
+        "time": "2014-10-07 17:43:34",
+        "type": "library",
+        "installation-source": "dist",
+        "autoload": {
+            "psr-4": {
+                "Crell\\ApiProblem\\": "src/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/",
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Larry Garfield",
+                "email": "larry@garfieldtech.com",
+                "homepage": "http://www.garfieldtech.com/"
+            }
+        ],
+        "description": "PHP wrapper for the api-problem IETF specification",
+        "homepage": "https://github.com/Crell/ApiProblem",
+        "keywords": [
+            "api-problem",
+            "http",
+            "json",
+            "rest",
+            "xml"
+        ]
     }
 ]
