Backport PR #5534: cleanup some `pre` css inheritance

We had various overrides of the bootstrap defaults for font-size and line-height every time we made a pre tag, and then some overrides of our overrides when we wanted something slightly different.

This moves the most basic overrides to apply to all pre tags, reducing the number of downstream changes we need.

Should hopefully replace the CSS changes in #5488
Backport PR #5584: more semantic icons

This adds classes to customize the folder and notebook document icons in the dashboard view.

I've also changed the notebook icon to have it better distinguished from the
folders and match e.g. Github's approach to this issue.

For the pixel-perfectionist, I've also made these icons a fixed width (they weren't before, I'm sure, like me, it's made you angry ; )

screenshot is coming.

closes #5555
Backport PR #5594: update components with marked-0.3.2
Backport PR #5782: Silence exception thrown by completer when dir() does not return a list

```python
In [1]: import SOAPpy

In [2]: s = SOAPpy.SOAPProxy('http://abc.com', namespace='xyz')

In [3]: s.Traceback (most recent call last):
  File "IPython/core/completer.py", line 1043, in complete
    self.matches.extend(matcher(text))
  File "IPython/core/completer.py", line 725, in python_matches
    matches = self.attr_matches(text)
  File "IPython/core/completer.py", line 403, in attr_matches
    words = dir2(obj)
  File "IPython/utils/dir2.py", line 63, in dir2
    words = set(dir(obj))
TypeError: __dir__() must return a list, not instance

If you suspect this is an IPython bug, please report it at:
    https://github.com/ipython/ipython/issues
or send an email to the mailing list at ipython-dev@scipy.org

You can print a more detailed traceback right now with "%tb", or use "%debug"
to interactively debug it.

Extra-detailed tracebacks for bug-reporting purposes can be enabled via:
    %config Application.verbose_crash=True

  File "<ipython-input-3-fbb1f01da851>", line 1
    s.
      ^
SyntaxError: invalid syntax

In [4]: dir(s)
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-4-9d6ad02bd404> in <module>()
----> 1 dir(s)

TypeError: __dir__() must return a list, not instance

In [5]: s.__dir__()
Out[5]: <SOAPpy.Client.__Method at 150204780>

In [6]:
```
Backport PR #5807: Drop log level to info for Qt console shutdown

At present, shutting down the Qt console displays this message in the terminal:

```
[IPythonQtConsoleApp] WARNING | shutdown: {'status': 'ok', 'restart': False}
```

I don't think this needs to be a warning - it's responding correctly to a user action. Info messages are not shown by default, so this change silences the message in the default case.
Backport PR #5814: Remove -i options from mv, rm and cp aliases

This was arguably useful in the terminal, but it means these aliases can't be used from any of the ZMQ frontends. And users familiar with the shell shouldn't find the default (non -i) behaviour surprising.

Supersedes gh-5729, which accidentally included an unrelated change.
Backport PR #5816: Add output to IPython directive when in verbatim mode.

Addresses #5776.
Backport PR #5818: interpret any exception in getcallargs as not callable

some object (mock) lie to callable

closes #5817
Backport PR #5822: Don't overwrite widget description in interact

If an existing widget is used with `interact`, and that widget has a description, then the description should not be overwritten. If it does not have a description, then the name should be used as a default.

This is as an alternative to #5653 as discussed in the dev meeting.