Properly chain preprocessing plugins.
Merge pull request #1987 from rwjblue/properly-chain-plugins

Properly chain preprocessing plugins.
Ensure that registry plugins added manually can be returned.
Merge pull request #1993 from rwjblue/allow-registered-plugins-to-not-be-in-package-json

Ensure that registry plugins added manually can be returned.
Fix model-test blueprint.

Passing a model (anything with a `toJSON` actually) into a test
assertion causes infinite loop with Testem.

Steps:

* Do an assert in your test like ok(store.find('person', 1), "record
  exists")
* QUnit stores the assertion in a test object.
* The test finishes so the record is destroyed automatically.
* QUnit notifies listeners the test is over.
* Testem listens for test end notification and attempts to ensure that
  there are no cycles in it by calling `JSON.parse(JSON.stringify(testObject))`.
* Calls `toJSON()` recursively, including any destroyed object that was
  used in an assertion.

Watch as tests hang when running ember test but work fine everywhere else.
Merge pull request #1996 from rwjblue/fix-model-tests

Fix model-test blueprint.
Refactor addon fixtures.

Migrate to currently suggested exporting of an object.
Merge pull request #1995 from rwjblue/refactor-addon-tests

Refactor addon fixtures.
Fix NotFoundError's constructor property.

The correct subclassing pattern is to set the prototype's `constructor` property after setting up the class's prototype. NotFoundError's constructor should remain `Function`, since it is an instance of `Function`.
Do not use non-standard `String#contains` which may not be available.

In the tests the traceur runtime (included with es6-module-transpiler < v0.4.x) polyfills `String#contains`. When not including anything polyfilling this it will not be available.
Merge pull request #1999 from eventualbuddha/remove-nonstandard-string-contains

Do not use non-standard `String#contains` which may not be available.
Merge pull request #1998 from eventualbuddha/fix-not-found-error-constructor

Fix NotFoundError's constructor property.
Add tests for initializer blueprint.
Merge pull request #2001 from rwjblue/test-initializer

Add tests for initializer blueprint.
Ensure that things loaded by server/index.js override addons.

Express will always process the first matching middleware.

A couple examples where this is bad:

* If a proxy was setup, it is always hit before any http-mocks
  you have setup (since it is itself an addon).
* If you want to serve static content (or another express middleware)
  from `server/index.js` you could never handle requests with an accept
  header including HTML. If you did, it would have hit the history state
  addon and just served up `app/index.html`.

In general, it is our policy that the application will always "trump"
addon code.
Merge pull request #2008 from rwjblue/app-wins-express

Ensure that things loaded by server/index.js override addons.
Add blueprint descriptions to ember help generate

Also display '(overridden)' next to overridden blueprints.

Addresses #1237
Addresses #1274

Pass options through printBasicHelp & printDetailedHelp

Hide overridden blueprints unless verbose flag is set

Add example descriptions to built-in blueprints

Add availableOptions to Blueprint
Ensure that startApp helper uses test environment config.
Merge pull request #2011 from rwjblue/ensure-start-app-uses-test-environment-config

Ensure that startApp helper uses test environment config.
Removed broccoli-sweetjs from registry since it doesn't work.

If you try and use it, you'll simply get `Unknown statement type: ImportDeclaration` because sweetjs doesn't know about ES6 modules yet.