update ChangeSet.subtract
improve ChangeSet.subtract tests
improve rule settings
improve targets apply rules