Initial implementation of ObservableArray