Swap underscore.js for lo-dash

A difference btw underscore and lo-dash is that lo-dash use _() for chaining, while with underscore, _.chain() needs to be called explicitly. Replace a bunch of uses of _().foo to _.foo() to avoid confusion.