Key events, text field, rounded rectangles

This commit adds three things:
* Key events: the Keyboard class now stores key type events. You can
iterate through them and process them whenever you want.
* TextField: A new component, a text field, was added. Users can enter
text into it, and then you can process it.
* Rounded rectangles: ShapeRenderer now supports drawing of rectangles
with rounded corners. The Button class makes use of this.

Also, you can now pull all input after you are done with your "update()"
implementation. This functionality is good to prevent mouse and keyboard
events building up.