http://ontouchstart.github.io/blog/#13-07-29 What is Backbone.js? (require underscore.js)