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
Implement a webgl backend

This implements a new rendering method; using webgl to draw to a canvas.

For Crafty's built-in components, simply replacing Canvas or DOM with WebGL will enable and draw to a webgl context.

It attempts to be somewhat flexible, but is designed specifically for drawing rectangular regions.  Custom shaders could be provided by a user.

For more information on the implementation, see comments in the code and this [page on crafty's github wiki](https://github.com/craftyjs/Crafty/wiki/WebGL-implementation).
Add brfs for inlining files
Implement webgl rendering for Color component
Implement webgl rendering for sprites
Implement webgl rendering for Image components