libbladeRF: Improved range checks and associated documentation

API documentation changes:
    - Added min/max #defines for:
        RXVGA1, RXVGA2, TXVGA1, TXVGA2, sample rate, bandwidth,
        & frequency

    - Documented ranges and error/clamping behavior for:
        bladerf_set_sample_rate, bladerf_set_rational_sample_rate,
        bladerf_set_correction, bladerf_set_txvga1, bladerf_set_txvga2,
        bladerf_set_rxvga1, bladerf_set_rxvga2, bladerf_select_band,

Ensured the aforementioned functions clamp or return an error
for out-of-range input. The low-level functions have NOT been updated
for range checks. (e.g., bladerf_si5338_set_tx_freq).