linux_driver: change when the buffers are marked as valid

This commit initializes RX buffers as valid at creation and when RX is
(re)enabled.
libbladeRF: change to using BLADERF_GPIO_FEATURE_HW macro

Minor clean up.
libbladeRF: Fixed typos introduced in previous commit

The patch applied as f6018c14d9e8b09b22b3d1be9eb8ee9e84818396 wasn't
intended to be merged. This cleans up said patch and touches
up surrounding documentation a bit.

This compiles but is untested as I don't currently have access to
hardware. (Just wanted to ensure the build isn't left broken all day!)

My apologies if this inconvenience anyone!
Update bladeRF.c

Fix to add missing include on bladeRF.c
Merge pull request #30 from Comics/patch-1

Update bladeRF.c
CLI: Added missing bladerf_enable_module() implementation

This routine is used to enable/disable the RX/TX on the LMS,
and should be used instead of the gpio_* routines.

All calls that are not prefixed with bladerf_* will be removed
and replaced with more appropriate interfaces in the near future.
CLI: Typo fixes in comments from previous commit
libbladeRF: Cleand up gpio_* return values and remove a few printf()'s
CLI: Added interactive mode support for RX and TX, misc. refactoring.

See the README.md in the linux/apps directory for more details.

Note that -d <device> is now optional if only one device is connected.
CLI: Fixed a few small typos in the README.md
kernel: Remove some breaks which were causing issues.
lib: Add some device initialization after the FPGA is loaded.
lib: Do not want to enable the modules via pins until we're ready to do something with them.
lib: Typo fix in LMS register access

Function call was missing a device handle argument
Merge branch 'bladerf' of https://github.com/Nuand/bladeRF into bladerf