ISPN-4862 Don't use static resource fields to initialize the shared description resolver in the static initializer. This fixes an initialization race where some fields could be null
ISPN-4673 Split-brain: get() returns null when all owners are removed
from view

* If get returns null, check that at least one owner is in the cluster.
* Replace RpcException with AvailabilityException if there are no valid
  answers.
Test that replaying a prepare command doesn't acquire the lock twice