Added ChangeSet toJson functionality.

It is now possible to export whole ChangeSet into JSON by using its
toJson method.
Added fromJson functionality to ChangeSet

Method fromJson creates a new ChangeSet according to the JSON-formatted
ChangeSet.
Added function apply(ChangeSet, DataMap)

Function apply(ChangeSet, DataMap) applies the changes present in
ChangeSet on the DataMap.
Updated test for apply functionality
fixed ChangeSet apply and added tests
fixed merge conflicts
Merge pull request #33 from cleandart/change_set_apply

Change set apply