Refactored WebGL extension registration for clarity.

Made most parameters optional to fit the most common future use cases. Draft
extension registration is now a separate function.

BUG=271539

Review URL: https://chromiumcodereview.appspot.com/22824004

git-svn-id: svn://svn.chromium.org/blink/trunk@156056 bbb929c8-8fbe-4397-9dbb-9b2b20218538