Added ChangeSetValidator to detect duplicate ChangeSetIds

This solves Issue #42.

It adds a 
* ChangeSetValidator interface,
* an default Implemntation of it and
* a Validation Exception.

The unittests are also included.