add js_extensions_path

serves files in `IPYTHONDIR/js_extensions` at `/js_extensions`.

This is a location for users / devs to drop-in frontend customization as js
modules, css, etc.

The model is very much like the extensions dir (hence the name) - it's a
location made available, but not loaded by default. You can load things from
there with require, etc.

It's a configurable search path, just like static. This way we can define a
system-wide location at a later point (/usr/share/ipython/js_extensions?) and
still have user installs.