Implementing it code wise isn't difficult.
Effectively you will need layers and your GUI would be the top layer and you have to render everything in order and you can check your clicks by the z-order of objects.
Yeh it is a little bit more complicated than I made it out to be, but the idea is pretty simple and if you understand OpenGL's basics it isn't all that difficult to implement a button.
Implementing text is probably going to give him a larger headache than anything.
Its a little bit more complicated than that Killer...
In game, its like saying:
Open a window, render the player, if he shoots, kill the person in front of him. Move him around with the cursor keys. And when you get through that door, you finished the game