Support transition from pending -> failed

This adds support for directly transitioning an instance from "pending"
to "failed" without first claiming the instance. If two systems attempt
to fail the same pending instance, the first will succeed and the second
will get a revision mismatch error.
Merge pull request #112 from soundcloud/allow-failing-pending-instance

Support transition from pending -> failed