plot.animateOnNextRender

This branch makes it so that `plot`s only animate a render once, and then it turns off. This means that that re-`render()`s won't cause the animation to play out; this could be annoying if the data hasn't changed.

Animation will occur in the case of `dataSource` changing, a `scale`'s domain changing, or a re-`anchor()`.

Close #611.
`reason === "domain"` implies `reason != null`