Some cleanups:

- renamed Ols -> OlsConstants;
- deleted the now obsolete CaptureData class.
Introduces channel groups as 'core' concept:

- allows to define a group-structure along with the acquired data
  in order to make it easier to represent state-values;
- refactored away the DataSet(Impl) classes as they were getting
  in the way. AcquisitionData is currently rich enough to replace
  these concepts;
- some additional cleanups.
Restored the 'retain annotations' functionality.
Cleaned up the demo device:

- made it a bit easier to add new demo data generators;
- added state data generator & clocked counter generator.
Revised the state analyzer tool:

- fixed some small bugs, simplified the code a bit;
- refuse to analyze state data.
Fixed an issue when applying data-templates:

- in case the channel configuration is changed wrt the template data,
  channels can be non-existant.
Several issues fixed:

- forgot to set the sample rate at various places;
- simplified the code of the clocked counter a bit;
- added more sample depths (up to 16 MSPS).
Bug fixes:

- make sure to use the same group layout as the original data;
- clear the sample rate, absolute length & trigger position before
  adding new samples.