This looks fun. We (at BigDoor) have built some of these same pieces using Knockout (http://knockoutjs.com/) as a starting point. I'll be trying this out for comparison in some prototypes for sure.
I also use knockout.js for a project and batman.js looks like it has some similarities but it seems to be filling some holes that knockout.js leaves you to fill your self.
Which, I think, is not a huge deal with Knockout, just a difference. In our case we're using it for widgets included on other people's sites, so it's not a conventional web "application" with "pages" (I don't think we'd use the routing bits of batman.js at all, for instance).