bladeRF-cli: Added timeout configuration to rx and tx commands

This timeout is now also factored into the samplerate check.

Some cosmetic cleanup of the rx/tx start functions is included. The
nested "if (status == 0)" business was getting ridiculous.
bladeRF-cli: Added filename completion support for 'file=' parameters
libbladeRF: Cancel all pending transfers upon requesting to stop stream

More specifically, cancel all pending transfers as soon as the API user
returns a NULL from the async callback.