Hade this huge fight with backbone.js. I won most of it.