http://ontouchstart.github.io/blog/#13-08-06_What_is_Underscore?