#add - transitions to state changes
#update - update event listener
#update - position icon correctly firefox
#add - spin the loading icon
#update - remove logs and tidy naming conventions
#add - web animations
#update - animation timing