bladeRF-cli: Fixed TX buffer corruption when file size < buffer size

Fixes #212

This defect occurs when the size of the file (in sample) is smaller than
the stream's buffer size. Note that n_read here is in units of int16_t
values (I or Q) -- 2 of these make up a "sample."
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