Added default animations, delegate for customization. Code's still dirty