As a clarification, we are looking for a way to keep two editors from accidentally editing the same node at the same time. We realize that a node lock would do this, but then there are the issues of lost locks, and so forth.
I think that a simple solution is a good starting point, and if we find that a more "complex" solution is needed, it can always be changed. "Simple" in my book is that an editor selects to edit a node, and if no one else is editing it, is given the editor screen. Otherwise the editor is given the name of the current editor. A lock expires after 20 or 30 minutes.