Load underscore properly using require.js

Without this underscore appears to be there most of the time, but
because it's loaded async there's a slim chance that it won't be there.
By making the dependency explicit using require.js we avoid any
potential problems.