Simulate deleting OAuth keys on remote servers

We've had at least one user accidentally or purposefully destroy OAuth
keys on their server. Because the keys are cached, there's no further
delivery.

This test checks to see if we work a little harder to get a key when
delivering.
Have distributor retry remote delivery on failed authentication

In the case where authentication has failed for some reason, we delete
the credentials and retry.
Merge branch 'master' into clientcollection
Don't call capturestacktrace unless it's defined
Use favorites instead of objects
Include a model class for ActivityObjectItems
use favorites, followers, following for initialization
use favorites, followers, following for initialization