BUG: Handle provider removal when person object is null

https://trello.com/c/etsd4DIs

When a provider object is removed, the system assumes there is an associated
person and attempts to remove that person as well. But we allow providers
to exist without a person (so they only have an ID). The provider adapter now
ensures that a person actually is there before trying to remove it

Change-Id: I032a573099a4f9d96bb3a5949582a20d614016f6