added ObservableDict.copy()