Introduce BufferConfig - persistent per-buffer attributes
There are some data we'd like to set and store for each buffer separately:
- Encoding (such that some buffers can have a different fallback than the default)
- Session restore behavior: Always join/Never join/Restore last state
- Buffer-specific ignore and highlight lists
- Possibly more once we start thinking about that
So we'd need BufferConfig object that is synced, and a way to store attributes coupled to BufferId in the database. Personally I'd like a flexible approach, e.g. serializing BufferConfig via QVariant, so we can easily add new features, and don't keep a ton of empty fields in the database (only settings differing from the default would be stored).
One could access such settings via right-click on a buffer item, for example.