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.

# Status

- [x] Automatically refresh the error list after a syntax check
- [ ] Highlight the error at point in the error list
- [ ] Automatically update the error list when switching buffers
- [ ] Unit tests
- [ ] 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.