It's mostly possible, very difficult and we don't have any examples. I've been writing up some options, but that'll be on the Customer Portal as opposed to public side for the short term, once I get enough time to finish it off.
Simple answer, you'll need UDFs and a lot of thinking. Polyflow is something else to review, but I can't help there as I've not got around to learning it yet (I've been working with colleagues on it for 20 years or so).