Optimize entity and addComponent function to create fewer objects

We should avoid creating objects that will be garbage collected,
because this slows downs performances and especially if you
create a lot of entities.
Remove fileList from package.json

Grunt has a function which can automatically make an array of files from a glob.
This is preferred over manually updating the file list, which can be forgotten.
Update bower.json

Added ignore; This way most parts will not be fetched by bower
Changed main; Added dist in front of the name so the source can be added to a project automated.
Merge pull request #825 from navelpluisje/develop

Update bower.json
Update bower.json
Merge pull request #826 from navelpluisje/develop

Missed a comma in bower.json
Merge pull request #812 from kevinsimper/grunt-glob

Remove fileList from package.json
Merge pull request #809 from kevinsimper/avoid-creating-objects

Optimize entity and addComponent function to create fewer objects
Fix bug in _SAT collision test

The test improperly detected min/max values in some cases.  This fixes that issue by comparing to +/- Infinity instead of special casing the initial values.  (It also gets rid of a now needless comparison, which might help performance.)

This also includes a test that catches the issue.

Fixes issue #828
Do not define defaults paths for loading assets

This breaks backwards compatibility for older games.
Move development dependencies to devDependencies
Module.export the Crafty object so it can be used by npm
Merge pull request #829 from starwed/sat-fix

Fix bug in _SAT collision test
Do not reset components when doing a hard reset
Merge pull request #830 from kevinsimper/resetFix

Do not reset components when doing a hard reset - Fixes #827
Fix doc bug; cleanup ternary syntax

- Fixes a documentation bug that gave incorrect default paths for `Crafty.load`
- Changed style of ternary operator usage, hopefully improving code clarity
Fix whitespace error in tests/core.js
Merge pull request #831 from starwed/load-fixing

Fix doc bug; cleanup ternary syntax in loader.js
Implement a new strategy for avoiding event queue mutation

The event callback queue can mutate in ways that mess up the iteration.  There are two cases we need to handle:
- While iterating through an event's callbacks, a new one is added.  This should not be triggered.
- When a callback is removed, we shouldn't actually mutate the callbacks array if this iteration was triggered in the middle of an iteration over the same array.

The first is solved by registering the callback array's length at the time iteration starts.  The second is solved by adding a depth counter to each callback array.  It's iterated at the beginning of iteration, and decremented at the end.  Items are removed from the callbacks array only when the counter indicates a depth of 1.

This patch adds a test for the addition of a callback mid-event.  It also adds one for binding/triggering groups of entities at once, since I noticed a typo I introduced while modifying the code wasn't being caught by the existing tests.
Merge pull request #832 from craftyjs/event-loop-fix

Implement a new strategy for avoiding event queue mutation