Added animation feature, mostly working at this point, but still has some quirks.