added observeValueForKeyPath
KVO and swipe to delete added