Hello! I'm just getting start with OpenGL, I read some articles about OpenGL on the website, but still have some questions. I hope you can help me to figure out.

1. What determines my OpenGL version? Is it that OpenGL functions come with Graphics card drivers ?
Can I change my OpenGL version by just doing something like installing some drivers on my computer ?

2. Why do I have to call *GetProcAddress to get the address of functions of extensions, where are the functions' binaries? Is GLEW simply a function loader ? How dose it load functions for me ?

3. I read the article about creating a OpenGL context, and feel a little confused about the Proper Context Creation. I'm not sure about what the advantages are of using WGL extension functions to create a context. Is it because functions like wglCreateContextAttribsARB supports extensible attributes for an OpenGL context ?
Where can I get detailed descriptions about those attributes ?