My first pass at the pendingRelationships hash simply leveraged the code for the full relationship tracking hash (which requires being able to locate a relationship from either end). However, for the most part we only need to find the "pending" relationship for a given pending relationship (I believe).
If we make this change, we'd also have to make the removeRelationship search for the pendingRelationship hash a bit more robust to handle the one side potentially not being hashed.
We would probably also need to be careful to be certain we're keeping around the old temp id so that we'd end up searching the correct bucket to remove the relationship from as it would be registered under it's old temporary id, not the completed guid.