refactor move

move() should blot if applicable, no need for separate blot()
draw pieces on rail
cleanup
draw continuously, smoothly