Refresh refactoring, frontend/UIManager side

This changes the refresh API. The handling is only modified slightly. There now exists a queue of refresh requests. Requests are merged when overlapping. The only method to trigger a repaint and/or a refresh is now UIManager:setDirty(). Everything else is gone.