Added Animation functionality and structures.
Moved @SuppressWarnings("unchecked") as close as possible to the source.