Load extension strings using gl::GetStringi rather than gl::GetString

gl::GetString(gl::EXTENSIONS) is not supported in forward compatible contexts, and returns a null pointer (segfault ahoy!)
Add version information querying and logging
Implement fallback for querying extensions when the gl version is < 3.2
Merge pull request #84 from bjz/capabilities

Load extension strings using gl::GetStringi rather than gl::GetString