There's also qmk's swap hands feature [1]. Qmk doesn't run on any hardware but if it does the possibilities are pretty much endless. Glad you made it through though and don't need it any more :)
It’s cool to see this in software now! My little hack was useful enough for me but I didn’t bother taking it any further because I didn’t want to fuss with patents.