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