Changed spin delay; added encoder

Instead of trying to run at a constant rate and count up to a step
pulse, it just delays until the right time.  Seems to work better.
Reading the encoder takes a while, which limits the maximum speed