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.
add InlineBackend.print_figure_kwargs

removes special handling of 'quality', in favor of passing arbitrary kwargs to fig.canvas.print_figure.

This lets people override the occasionally problematic use of `bbox_inches='tight'`,
and any potential future issue that might be solved by adding/changing kwargs to print_figure.
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
Don't introspect __call__ for simple callables

Closes gh-5164
Added bottom margin to text widget
Added a class for RadioButtons container

with appropriate top padding...
fab css
Fixed radio button selector for new radio button class
Added msg_throttle sync=True widget traitlet
Added parentheses to emphasize order of op.
Fixed .. typo
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