dlg_comports: Add GUI elements for Hamlib

They do not perform any function at this stage.
Add beginning of hamlib

Builds, if the user has hamlib installed:

$ sudo apt-get install libhamlib-dev

Not yet used by freedv.
dlg_comports: Add some default values to the dropdowns
Hook up basic Hamlib functionality

We now populate the dropdown with all of the devices that hamlib
supports.
Begin hooking up settings

They are now saved when exiting and restored when opening the dialog.
They are not persisted to disk yet; have not looked at what is missing
there yet.
hamlib settings are now persisted to disk
Working PTT support

Untested on a real rig, this appears to do the correct thing
with the dummy device.

Changed over saving of the rig to be based on the position in the
hamlib list. This makes the setting quite fragile; if hamlib gains
or loses support for more rigs then the setting will give a bogus rig.
This shouldn't be a big concern.
Add hamlib to cmake build

Also fixes hardcoded svn rev, as it is wrong. Also orders text
files in ABC order.
Remove broken assert and unused check

Both cause warnings when building
Add option to disable libctb use

Add DISABLE_CTB=y to Makefile.linux to build without ctb.

The ctb related UI will still be present, but will not function.
Misc small fixes to Makefile.linux

 - Define ctb and sox so that build rule does not create a warning when
    building against system libraries

 - Build with -O2

 - Define c rule so that .c files are built with c compiler. clang++
   complains if using it to build .c files