code: function IndexBuffer( gl, type, data, usage ){
    this.gl       = gl;
    this.buffer   = gl.createBuffer();
    this.usage    = usage || gl.STATIC_DRAW;
    this.type     = 0;
    this.typeSize = 0;
    this.size     = 0;
  
    this.setType( type || gl.UNSIGNED_SHORT );
  
    if( data ){
      this.data( data );
    }
  }
docs: @class
  @implements {Drawable}
  @param {WebGLRenderingContext} gl      then webgl context this ArrayBuffer belongs to
  @param {GLenum} [type=GL_UNSIGNED_SHORT]  the inetger type of the indices (GL_UNSIGNED_BYTE, GL_UNSIGNED_INT etc)
  @param {TypedArray|uint} [data]   optional data to copy to buffer, or the size (in bytes)
  @param {GLenum} [usage=GL_STATIC_DRAW] the usage hint for this buffer.