GROOVY-5886 Added ObservableSet plus testcase 

Includes implementation and testcase for ObservableSet. This commit can be merges safely into 2.X and 1.8.X branches.