libbladeRF: API change for get/set data transfer timeout

Addresses issue #202.

Fixed name and made return value an operation status rather than
returned value for consistency. We may need to make some
backend-specific calls here in the future, hence this interface
returning status.

The current implementation is not backend-specific, and has been moved
up to the top-level.
libbladeRF: Refactored correction functions and enumeration.
bladeRF-cli: Cleaned up correct command

Added return value and parameter checks. This command now ensures that the FPGA
is loaded. Performed misc. cleanup.
host: Fixed sample format misnomer - Q12 -> Q11

The sample format was incorrectly named, as there are only 11 fraction
bits, not 12.

The enumeration value has been renamed, and a macro definition is
provided for reverse compatibility. (This macro def will be removed
prior to the first "release.")
bladeRF-cli: Correct rx/tx error messages for invalid config params

Fixes issue #204
bladeRF-cli: Moving over to use rational rates for sample rates.
libbladeRF: Updated description of bladerf_log_set_verbosity
Changing some constraints and signaling for FPGA.

The FPGA, when in SPI flash access mode, has the UART disappear.  It should not be driving the UART signal or the CTS signal.
When the SYS_RST is asserted, drive those pins to 'Z'.
Switch naming convention to BLADERF_CORR_<DEVICE>_<REG>