only check for formatters on instances

use inspect.isclass to disallow unbound methods,
not type checking on the method itself
remove _valid_formatter

check in _safe_get_formatter_method

- reject classes
- allow any callable...
- ...except on objects that lazily produce callables at any attribute
Kill the layout manager
Fix scrolling for large outputs
Fix scroll/resize handle missing behavior.
Fix, prevent notebook from having its height set on pager display
Increase pager handle size.
remove special handling of ipython_kernel in launcher

- set JPY_PARENT_PID and JPY_INTERRUPT_EVENT env variables for all kernels
- no custom kernel args other that console passthrough
- use devnull instead of `--no-stdout` (comments claim it shouldn't work, but tests suggest it does - let's keep an eye on this)
moving, checking MathJax typesetting to WidgetView

widget rendering should not fail hard if MathJax is not available
also setting text in widget.typset
reversing order of arguments, as text may already exist
moving typeset to DOMWidgetView
accept node or selection
add py3compat.buffer_to_bytes_py2

casts buffer-providing objects to bytes

needed for pickle.loads on buffers
cast buffers to bytes on Python 2 for pickle.loads

pickle.loads doesn't support the buffer interface on Python 2
Address @carreau 's review comments
moving typeset to utils, usage in cell and outputarea
Add dark lower border to pager handle
Keep Cython filenames in tracebacks
gh-7044: set TMPDIR to workingdir in tests