Unlocking/giving skills and skills w/ different targeting

It would entirely depend on how you need it to be implemented. There is a lot more to it than just a simple answer.