Simplification
Added the Visibility trait and updated promises for Animation