Fixed initialization of Annotation::_format field
pulseview: fixed probe shuffling problem.

pulseview shuffles probes when a device has more than 16 probes.
Fix hardcoded home directory (pass -DHOME=$HOME to makensis).
Added zoom one-to-one
Removed use of LabelMarginWidth
Make header width responsive to label text
Moved RulerHeight out of View into Ruler
Populate sample rate widget with correct initial value
Removed Sample Rate binding from DeviceOptions

The value is already exposed in the SamplingBar
Remove all decoder traces when loading a file
Added double-click zoom behaviour
Replaced Decoder internal GHashTable storage of options with a std::map

This also solves the problems recommitting decoder options.
Improved appearance of small annotations
Store annotations as objects emplaced in the vector

Rather than as pointers to heap allocated objects.
Moved annotation painting code into DecodeTrace, and moved Annotation in pv::data::decode namespace.
Handle C-strings as UTF-8
Removed declaration of pv::MainWindow::decoder_name_cmp
Added missing include to annotation.cpp
Made decode an optional feature disabled by default.
Stop capture when device is changed

This resolves bug #223