Use the more powerful signatures module to display function argument signatures. In particular this works better for functions wrapped with functools.wraps (at least on Python >= 3.4)
Use native map when possible

Implemented on all modern browser.

There is a small behavior difference between $.map and Array.prototype.map
but we don't rely on it.

(jQuery flatten arrays and filters null-like)
use `pip install .[all]` on travis

can't actually use `.[all]` syntax, instead using `file://$PWD`,
but the principal is the same.

get wheels from minrk/travis-wheels to expedite installation
remove timings in travis.yml

Travis does its own timing now
add 'requests' as test dependency

since it is one
create new terminals with POST /api/terminals

instead of GET terminals/new

to be consistent with creating new notebooks.

We had to stop using GET notebooks/new
because browsers would create new notebooks when making preview thumbnails for commonly visited pages, etc.
I assume the same issue would apply to terminals
Initial interface for javascript contentmanagers

contentmanager.js is going to be a js proxy for the current
filenbmanager.py.  This will allow a contentmanager for Google Drive to
be created.
ContentManager function signatures updated
Style and bug fixes
Use IPython style constructor
Make ContentManager stateless

Don't store notebook_path in ContentManager, because this sort of state (in addition to notebook_name) can change, and keeping track of this logic doesn't seem to be a part of the file management system.  Instead, this logic can be left to the Notebook instance (and possible other places that manage it).  This makes refactoring easier, and avoids having to replicate this logic in every implementation of ContentManager.
Adds dialog on new_notebook failure

This logic doesn't really belong in ContentManager.  It would be better to trigger an event, which is handled somewhere else.  But there's no obvious place to put this event, so creating the error dialog inside the new_notebook method is ok for now.
Replace other methods with ContentManager.new_notebook

Replaces Notebook.new_notebook and NotebookList.new_notebook with ContentManager.new_notebook
Move deleting a notebook to contentmanager.js

Move code to handle deleting a notebook from notebooklist to
contentmanager.
switch notebook.delete to use contentmanager

Make notebook.delete call contentmanager.delete_notebook
Move notebook.rename to contentmanager

Make notebook.rename call contentmanager.rename
Move saving to contentmanager

Make notebook.save_notebook call contentmanager.save_notebook.
Removes unnecessary parameter from ContentManager.delete_notebook
Remove deleted notebook from notebook list

Uses events to notify the NotebookList when the content manager deletes a notebook, and remove the deleted notebook in response to such an event.
Fix constructor comments

Add content_manager as a dictionary key to the options param passed in to the NotebookList and Notebook constructors.