That did wonders for accuracy but...

* It feels more jittery (try printing fps?)
* whenever we update impx we must update
x = round(impx)
* the same goes for the y coordinate
* how does this work for the backend? expect setx and
sety functions?