Swapping between mutiple classes for a single character

I am creating a game on animals.

My focus is:
1.The player can change into different animals at an instant (Example:Human>Buffalo>Tiger>Human) for a single protagonist.
2. For each animal to have different set of abilities and attacks.

How do I proceed to do this efficiently? I was thinking about creating different character blueprints and Unpossess current/destroy current/ create new/possess new but think it is not a good way to do so.
Thank you.