initial cut at a is_contiguous type_trait for the buffer class. Also contains a byte_size function and a value_type to get information from the container passed to buffer. Provided some convienent type_traits that wrap enable_if, although the names are still verbose
renamed methods to be consistent with the opengl calls they make.
fixed an include guard typo
Added texture include and ordered the includes alphabetically
Only bind the passed in id and rebind the currently bound id if they are
different, otherwise we do no work other than a call to currently bound.
There is no reason to check against rebinding to the 0 id. This class
simply exists to  rebind the currently bound id on its
destruction, nothing more!
updated example to go along with changes
refactored to make use of the is_contiguous type_traits class. Also
changed the semantics of binding. Calling the default constructor does
not bind anything. Calling the constructor that accepts a container will
bind the id. Calling data or subdata will maintain the currently bound
id after the call is complete.
fixed the move asignment operator - it was creating an unecessary temporary. Added a get_deleter, release, and an additional constructor that takes a GLint
make byte_size constexpr for std::array and c-arrays
return reference to the static deleter function
add final qualifier to all policy definitions and make sure they are all defined as structs
removing all includes to GL/glew outside of gl.hpp. Updated include white spacing across all files to be consistent