Hello dear Cosmic Kid 
I’ll try to answer your question, with the simplest methods that i know of 
First, (in case you are using LWJGL 2) the keyboard control part, i.e, recognizing if a button is pressed once:
First i recommend you to read through this doc of the LWJGL Keyboard stuff, if you want 
Link: http://wiki.lwjgl.org/index.php?title=LWJGL_Basics_2_(Input)
This is how you recognize if a key is pressed once, i.e, if the key is ‘pressed’ or ‘released’
Here i quote the LWJGL 2 wiki for better understanding:
For example the Keyboard buffer can be scrolled through using the following:
while (Keyboard.next()) {
// get event key here
}
The Keyboard.getEventKey() method will return which key generated the event.
if (Keyboard.getEventKey() == Keyboard.KEY_A) {
System.out.println("A Key Event");
}
Now the most important bit!
The Keyboard.getEventState() method will return true if the event key was pressed or false if it was released.
if (Keyboard.getEventKey() == Keyboard.KEY_A) {
if (Keyboard.getEventKeyState()) {
System.out.println("A Key Pressed");
}
else {
System.out.println("A Key Released");
}
}
So you could us it like the following where you put your controls:
while(Keyboard.next()){
if(Keyboard.getEventKey() == Keyboard.KEY_A){
if(Keyboard.getEventKeyState() == true)/*Key is pressed once*/;
if(Keyboard.getEventKeyState() == false)/*Key is released*/);
}
}
Thats is it for the raw input, but i advise you to write/use a class, that scans through the keyboard ‘event buffer’ BEFORE updating the rest of your game.
You could say, ‘record’ the input and then ask the input manager something like: InputManager.isKeyPressed(Keyboard.KEY_A) and this would return a boolean, if they has been pressed once, released, or is held. (If you want advice on that, let me know and i’ll try to help you with that, it is WAY easier, one method call and you get your input boolean the way you want :))
Now for the text rendering:
For normal text, displaying it as quads is certainly fine (if theres not hundreds and thousands of characters, even then it shouldnt be a problem).
But i would advise you to use and existing library or class from somebody else, text and OpenGL is a nightmare.
You can use the slick util:
Download here: http://slick.ninjacave.com/slick-util/
Tutorial how to use it: http://ninjacave.com/slickutil3
The forum is full of made up classes from users for text rendering, you have to search a little to see what you like, and how you implement it.
I i missed something or you have more question, tell me, and i’ll try to guide you through the jungle, at least of what i know 
Greetings and all the best,
JJ