yup -- I believe this is a better user experience in terms of capturing ratings (by capitalising on the availability heuristic)
What you're describing technically would work when each person compares every item (and would fall into the domain of condorcet methods).
However in practice the election becomes a graph (rather than list or x/y table) with cyclical dependencies and conflicting comparisons -- it becomes quite hard to resolve -- but it can be.
I envisioned starting with an empty list, and populating it with the user's comparisons as they come in. That way, you don't have to deal with unrated items.
Cyclical/conflicting comparisons are a function of faulty users, the algorithm can't take the blame for that! ;)
What you're describing technically would work when each person compares every item (and would fall into the domain of condorcet methods).
However in practice the election becomes a graph (rather than list or x/y table) with cyclical dependencies and conflicting comparisons -- it becomes quite hard to resolve -- but it can be.