skin controller: move validate and add joint to own function