New version of the customShapes plugin

This is an update for the customShapes plugin:

- New "Font Icon" mode (you can now display symbols / icons in nodes)
- New WebGL shape renderer (shapes, background images and font icons are supported)
- Small changes in the API + new docs (see README.md)
- Minor (but somehow necessary) change in the sigma core, to fix hover labels overlapping with webgl shapes

In order to get the best performances, the WebGL renderer uses a system of (configurable) sprite caching for font icons and background images:
![screen shot 2014-11-28 at 01 00 48](https://cloud.githubusercontent.com/assets/136294/5222520/06de5c5e-769a-11e4-84e1-a34933b83752.png)

And the border shapes are produced using real-time polar drawing functions for sharp edges (it is thus retina-display ready, and can be zoomed indefinitely):
![screen shot 2014-11-28 at 00 39 34](https://cloud.githubusercontent.com/assets/136294/5222451/15103516-7697-11e4-8c16-c5f5c6e8a92a.png)

However, since they work differently behind the hood, there are some visual differences between the Canvas and WebGL versions: admittedly some things will look better in canvas, other better in WebGL (see the new customShapes demos pages in the examples/ dir to try for yourself). Also, node hover are currently in canvas mode only in Sigma.js.

In all cases things will definitely run *much faster* in WebGL mode, about 1000 ~ 3000 nodes with images (but this really depends on your machine and dynamic layout used), so please have a try and let me know what you think (feedbacks are really appreciated here!).

For those who need better rendering, or more consistant look between rendering modes, please know that I am still working on fixing these small issues (they take the longer time) here:
https://github.com/jbilcke/sigma.js-plugin-customShapes/issues
Add `img.setAttribute('crossOrigin', 'anonymous');` here to avoid the following exception when exporting the canvas to a PNG file usign the screenshot plugin:

> Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported.

More info: https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_enabled_image