Material: allow custom id & do checks by id

This allows you do things were you may need to
 have separate material instances that should be
 treated as if they were identical.
moved contactSkin handling to the ContactMaterial and ContactEquation instead. Added property .contactSkinSize to ContactMaterial. https://github.com/schteppe/p2.js/issues/106
capsule AABB bugfix
Prettier code and more tests for Narrowphase
Merge pull request #114 from Fishrock123/master

Material: allow custom id & do checks by id
Bundling the demo classes and dependencies. https://github.com/schteppe/p2.js/issues/115
cleanup demo css https://github.com/schteppe/p2.js/issues/115
Changed to dat.gui in demos. https://github.com/schteppe/p2.js/issues/115
removed jquery dependency from demo https://github.com/schteppe/p2.js/issues/115
changed name of Demo and PixiDemo, updated bundling of them. https://github.com/schteppe/p2.js/issues/115
added watch task for renderer files
new constructor for the renderer and other improvements https://github.com/schteppe/p2.js/issues/115
more instructions in console https://github.com/schteppe/p2.js/issues/115
console logging the global variables added by the setup function https://github.com/schteppe/p2.js/issues/115
fixes to make the p2.renderer.js bundle work in jsfiddle https://github.com/schteppe/p2.js/issues/115
Update README.md
World.prototype.sleepMode, replaces .enableBodySleeping and .enableIslandSleeping, fixes https://github.com/schteppe/p2.js/issues/117. Also removed World.prototype.toJSON and .fromJSON
Moved the gl-matrix vec2.js file from build/ to the math folder.
Turns out yuidoc can only ignore folders. Putting the glmatrix file in a folder so it can be ignored.
Copy-pasted in needed vec2 methods from glmatrix, this will save some bytes. Using browserify auto-detect globals. Changed name of GLMAT_ARRAY_TYPE to P2_ARRAY_TYPE.