Use uint8 for GLchar and GLcharARB. Fix #47.

Per discussion in #47 use `uint8` for `GLchar` instead of `int8`. Prefer `uint8` over `byte` because some GL functions, such as `glGetString` use `GLubyte` rather than `GLchar`.

My only hesitation is that this change represents an API change that has the possibility of breaking client code. I expect the majority of use cases to be funneled through `gl.Str` which makes the change transparent but any direct string manipulation will be affected.