Improve error list

Improve the error list to behave more like error windows in conventional IDEs such as Visual Studio or Eclipse.

See #206 for background and discussion.  Inviting @purcell and @marcinant for feedback and testing.

# Changes

## Breaking

- `flycheck-display-errors-in-list` is gone.  It wouldn't work well with automatic updates after syntax checks, and is superfluous anyhow, because the error list automatically highlights errors at point now.
- `flycheck-list-errors` cannot list errors at point anymore, for the same reasons.  It doesn't take any arguments anymore, and any prefix arg to the command is ignored.

## Non-breaking

- Automatically refresh the error list after each syntax check
- Automatically update the error list when switching buffers
- Automatically highlight errors at point in the error list
- New face `flycheck-error-list-highlight` for error highlights

# Status

- [x] Automatically refresh the error list after a syntax check
- [x] Highlight the error at point in the error list
- [x] Recenter the error list around the highlighted error
- [x] Remove error list header
- [x] Automatically update the error list when switching buffers
- [ ] Unit tests
- [x] Documentation

# Potential pitfalls

## Scrolling in the error list

Currently the point is reset each time the error list is refreshed.  This obviously reset scrolling state, too.  Need to find a way to preserve scrolling state, or make scrolling state follow error highlights.  Find out how to center a non-current scrolled buffer around a line.