Marvin, I saw you use :
now = System.currentTimeMillis();
Wouldn’t you use JavaTimer in com.xith3d.utility.timing ? (It uses nanoSeconds and if you use TimerInterface instead we can later implement e.g. LWJGL timers or something like that if we need it more accurate).