Looks pretty good. In short, (if I understand this well) it solves the problem of updating a value in an ajax app and then having to update lots of separate different parts on the screen in js, which can get messy. They seem to be inspired by Silverlight's approach.
They all just copied from the Flex framework anyway. (Seriously that's been so far ahead of the JS libraries for a long time. I'm happy Knockout exists so I can use it!)
Do you mean mx:Binding? I dislike mx:Binding as it has been buggy for us (property value updated but UI does not update). I've resorted to avoiding it and using EventDispatcher to notify views to update themselves.
In general, I think it is way too difficult to fetch data async from a server and update the Flex UI. LiveCycle Data Services is more about push than real-life async use cases.
Yeah, there's a few gotchas to watch for with binding that depend on the datatype. Flex 4 has only improved things, though it did take a bit to adjust. I really like the {syntax} though, and apart from the binding issues with XML I really like working with it in Flex but hate it in JS. Flex makes the XML vs. JSON distinctions almost go away for me.
(tldr: yeah, async stuff in Flex can sometimes be really verbose.)
I don't find the async stuff too bad, though it all can horribly be abused. The project I inherited used Cairngorm with SOAP services and had a separate Event, Command, and Delegate class for every web service! Some generalizations have made that into only one Command class per web service that's just responsible for handling the specifics, though I also have a general Command class that will offload the response to a callback function the requester can provide. I always liked Ext's (er, Sencha's...) Ext.Ajax.request() and jQuery's offering.
Yes, our project was bootstrapped initially by a bunch of Cairngorm loving consultants. I doubt we will move to Flex 4 as we have common company library SWCs that would have to move to Flex 4.