Use glDrawArrays() in opengl_sphere example
Fix bug with opengl_sphere example on AMD
Make platform::get_extension_function_address() const
Add platform::id() method
Add opengl_create_shared_context() function