Modular creature

Hey guys, I’ll try to be quick.

I’ve looked around for modular characters, but I’m not sure I’ve found the right solution.
What I’ve found: change parts of the characters (face, hair, and so on) then put 'em on the main skeletal mesh’s skeleton and use a node so that they copy its animation.

What I’m looking for:
I’m trying to create a creature that has a body, an indipendent head (the head should be able to rotate even if the creature is walking, even in the opposite direction of the creature’s walk), and has sockets to attach limbs (for example a tail with indipendent animations, and legs that may differ greatly from one set to another and have different animations). Have any idea on the right approach?

Thank you so much!

As I know in some games character mesh itself stay the same and so bone weights are set one time. But then you can apply morph to mesh and it’s vertices have changed position and so form differs from origin… Meybe this can help