Hi Cobalt!
A : GL routine is a special subroutine. It called automatically at 60 or 48 times a second depending on the refreshrate of display. I usually add a loop so that program can be hold and GL can be called continuously in the background.
B : It is possible. You can apply texture to any type of object/shape, whether it is 2D or 3D. You can even apply 3D textures as well as multiple textures.
Using textures in OpenGL is a bit cumbersome. I have started a tutorial here -
https://ashishkingdom.github.io/OpenGL-Tutorials/ (not completed yet). You can either go through the tutorial and understand the behind the scenes thing about GL. For now, I can provide you a simple routine which can render a cube with the texture map as an arguement soon.