Do not allow duplicate ODB backends

There's an issue with the way we're finding ODB backends: if we have a repo with a given alternate (a "root") and then we add to it another alterneta coming from a repo with the same "root", the "root" will be added twice to the backends stack.

This is not critical but not ideal either. Here we store the on-disk `inode` for all the disk backends as we find them, and ensure there are no repeated ones.