Docs-a-palooza

So many docs...

Wanted you to see this before it got merged, just for some code review since there are so many changes.

A couple files I didn't document:

- `Strip.js` - I have no idea what this is
- `Rope.js` - same as above
- `WebGLShaders.js` - wasn't sure how to document these