Separate session/helpers bundles, tweak bundling

Tweak the way we organize our asset bundles for fewer output files,
straightforward names, and no conflict of dev and prod output files.

- Break session and helpers into their own bundles.

- Bundle vendor libs up where they are not common to more than one
  optional component. For example, angular-bootstrap is only needed by
  helpers since that is where we now redefine tabbable and create
  the tab-reveal directive (in a new helpers/ui-helpers.coffee file).
  Another example is angular-resource, which is only used by the session
  bundle. On the other hand, angular-route is used by the app, but soon
  also by the auth bundle as soon as we unify all the login forms and
  boot out deform.

- Inline icomoon.css.

- Rename some outputs:
  - hypothesis-app.{css,js} -> app.{css,js}
    This is the main site application.
  - hypothesis-inject.{css,js} -> hypothesis.{css,js}
    This is the inject script.

Close #1555
Related to webplatform/notes-server#13
Merge pull request #1557 from hypothesis/1555-asset-bundle-structure

Separate session/helpers bundles, tweak bundling