Add/remove Sprite components sometimes fails to change background-image

When switching between two Sprite components that use different background
images, the second background-image fails to get set properly.
Merge pull request #838 from FallSe7en/develop

Add/remove Sprite components sometimes fails to change background-image
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