Basic dragging, synchronized ticks (fix flicker)

* Items can now be dragged around.
* Ticks are now synchronized (the code waits for the previous update to
finish until doing the next one). This fixes cursor flickering and
possibly much more.
* The performance should increase due to a relocation of the directory
reading, which is also only done once per second now to improve
performance even more.