I just posted a possible solution here
Feedback wanted.

(Noted here in case anyone is following this thread.)