It's a pity that overloading creates such a large overhead. I can see great benefit in numifying $row to find the $row_count. Contextual::Return provides this, but at a significant cost to performance.
My criteria for good software:
Does it work?
Can someone else come in, make a change, and be reasonably certain no bugs were introduced?