bladeRF-cli: Additional fix for CID1234624

The fix in 2f193db1 missed the return that occurs if no device is open.
bladeRF-cli: Updated error message to include str from bladerf_strerror()

Asking the user if the FX3 is programmed isn't terribly helpful, and
actually causes more confusion. Showing the bladerf_strerror() output
instead is more useful when troubleshooting.
libbladeRF: Additional fixes for CID1232253, CID1232254

These were not fully fixed in 073bd46 and 3fd13f7, respectively.
libbladeRF: Fix for CID1249706 (Unchecked return value)

This particular item is rather benign, but it might be useful to know
what error was associated with the failure on the corrected line.
libbladeRF: Fixed potential integer overflow (CID1249702)

The right hand side of the expression could overflow before being
widened to a 64-bit value.
libbladeRF: Fixed potentially uninitialized variable (CID 1249697)

This addresses the deinit_task() function operating on uninitialized
rx/tx structures if the bladerf_set_loopback() call fails in
test_threads().