Created OpenGL buffer runtime exception

OpenGL buffers have exceptions too!  Sometimes they are really nasty
and need to be thrown right away.  Other times they can be caught and
handled properly.  Either way, this base class for all OpenGL buffer
exceptions will certainly help.
New enumeration for buffer primitive types

LWJGL only allows certain types of data to be loaded into OpenGL
buffers.  These take the form of different methods to require different
types of Java Buffers.  This enumeration abstracts each of those
specific methods to an enumeration value.

It's sort of a hack and should be discussed some more.  Later.
Buffer primitive type added to buffer

GLBuffers now must have their primitive type specified at creation.
This will allow them to properly write and read data to and from
OpenGL.
Changed name of method to get default buffer factory