Big rewrite of display list queue management

Expect things to break, then get better.
Move SubIntr management to the IntrHandler

This makes the code a bit easier to work with when adding some pre and
post interrupt HLE code.
Reimplement GE interrupts
Add waiting mode for sceGeDrawSync and sceGeListSync
Totally untested update to PPGe that properly use the sceGe API

Could probably fail is there are no more DList. Should this be an issue?
How else could the original sceUtility draw?
Enqueue can take either a non enqueued playlist or a done playlist
Move the display list interrupt tracking to something simpler

currentList() was changing too much and it would sometimes return NULL
in the interrupt processing code. This is simpler and working!