DatabaseComponent throws an exception instead of returning silently if a contact is removed during an operation involving that contact. More unit tests.