Replace JSHint `predef` with `globals`

It looks like `predef` was deprecated in favor of `globals` some time ago.
[#417] Returns 404 for un-handled resources

To use, add ignoredFileExtensions key to static():

```JS
app.use(static({ file: 'tmp/result/index.html', ignoredFileExtensions: /\.\w{1,5}$/ }));
```

Middleware is processed sequentially, so this should be the last call
to catch non-existent asset files. All other paths continue back to
index.html to be handled by the Ember router.

  - Adds another option, ignoredFileExtensions the static middleware
    function, which allows you to specify a regex to capture resource
    paths that should return a 404.
  - Adds a check in static() for ignoredFileExtensions key that tests
    the regex against the request path for a matching file ending.
    If matched, then it sends a 404 error and does not serve the
    index.html file.

Passes an error string to next when trapping 404s

Traps 404s for resources in dist mode as well

Refactors 404 trap to an ignored file extensions property on the index.html catchall

Refactors ignoredFileExtensions regex
Halts the middleware chain after handling 404 resources

Signed-off-by: FilmKnurd <andrew@astonishdesign.com>
Merge pull request #418 from astonishdesign/feature/404resources

[#417] Returns 404 for un-handled resources
Fix watch task failing on Too Many Open Files
Merge pull request #421 from seriousben/FEATURE-Fix-too-many-open-files

Fix watch task failing on Too Many Open Files
Allow clearing the registry.

This is useful for testing custom lookups in the resolver itself. I
would much prefer to keep this the same everywhere and it currently
seems that the canonical `loader.js` is here in EAK.

Also, moved the definition of `requirejs._eak_seen` to be outside of the
`requirejs` function. I am not sure why we would want to reset it
everytime that we call require.
Update to Ember 1.4.0-beta.2

Ember 1.3.1 has an issue that prevents loading/error substates from
working properly (see [detailed
comment](https://github.com/stefanpenner/ember-jj-abrams-resolver/issues/13#issuecomment-32726797)).

This was fixed upstream and is working properly on Ember 1.4.0-beta.2.
Merge pull request #428 from rjackson/update_ember

Update to Ember 1.4.0-beta.2
Merge pull request #425 from rjackson/add_clear_to_loader

Allow clearing the registry.
[Fixes #416] CLI tools referenced within package.json should be referenced node_module local
Force testem to rerun tests after any files in tmp/result are changed.

Fixes issue 392
Merge pull request #431 from cavneb/fix-392

Force testem to rerun tests after any files in tmp/result are changed.
imagemin should not empty files if run repeatedly

There is an active bug in imagemin where if you run the task repeatedly it can start outputting empty files. Currently, the easiest way to get around it is to set the cache option to false.

https://github.com/gruntjs/grunt-contrib-imagemin/issues/140
Merge pull request #432 from ulisesrmzroche/master

imagemin should not empty files if run repeatedly
templates in pod structure should also compile
Update helpers.js to include grunt-rev
Merge pull request #433 from MajorBreakfast/patch-2

Update helpers.js to include grunt-rev
Remove relative paths

Okay. Let's try again.
Merge pull request #435 from MajorBreakfast/patch-4

Remove relative paths