band-aid for completion

Unlike @Carreau's attempt at using proper CodeMirror completion,
this is just a band-aid to get the existing completion back to working for 2.0.

This adds a keypress handler on the completer,
which then calls insert with the charCode of the key press event,
replacing the final `elif` branch of the keydown handler.

This cannot be done with keydown,
since keydown doesn't know what character is incoming,
only the hardware key that is struck.
remove application/pdf->pdf transform in javascript

We have the old transforms because they were added before we realized it was a bad idea. We should not add new ones.
handle 'application/pdf' in nbconvert

since we shouldn't add a 'pdf' shortcut
set default value from signature defaults in interact

If available, use the default value from the signature for the initial condition,
when using range/choice abbreviations.

Not affected:

- single-value abbreviations (`@interact(a=5)` sets `a=5`)
- explicit Widgets
remove no-op adding abbreviations from always-empty dict
remove inappropriate 'pdf' key

in favor of 'application/pdf'
bibtext typo
fix file extension when extracting PDF figures
add pdf to extract output tests
add pdf output to test notebook
fix check for non-attr output keys
set default value from dict
further tests for default values in interact


both valid and invalid
undo failed changes

before raising

otherwise, invalid values were still accepted
depend on new gnureadline instead of readline on OS X

this is the same package under a different name,
to avoid the stdlib-overriding behavior that relied on easy_install's unpleasantness.
remove no-longer-necessary dirty hack for readline on OS X

just import gnureadline

(yay!)
adjust dependency check for gnureadline on OS X

- always depend when making a bdist (for consistency)
- otherwise only depend if missing (e.g. pip install -e)
only depend on readline package in CPython

shouldn't try to install it on PyPy

not sure about PyReadline on PyPy on Windows
use rlineimpl in terminal.console
don't assume outputs have metadata

in nbconvert

some old notebooks do not have this key defined