[LWJGL] How can I make a batcher with GL3.x

So I’ve started to understand OpenGL 3 a bit better, but I’m having trouble making a batcher so I can render objects in real time. I have yet to find any good tutorial on doing so that isn’t too complicated. Until I can find one, I attempted to make a Quad class that loads Rectangles using of the LWJGL wiki code. Only one Quad is rendered and movable though. I tried changing the parameters so they would sort the index of the vbos for me but that made a bigger mess.

If you’re interested in my code here’s the main class: http://pastebin.com/cDbjqfGz
And here’s the Quad class: http://pastebin.com/vaev3vqj

In modern OpenGL I find it difficult to make some kind of Batch class than it was in older versions. What are some good books/tutorials/docs on making simple batchers for drawing shapes using calls like

batch.drawRect(...)

?