Added animation support, other optimisations