Merge pull request #117 from litghost/expand_fix

Add variable expansion support to recover function
libbladeRF: Support for legacy config interface.

Added checks for the legacy config interface being interface 0 instead
of interface 3 which changed in the v1.4 bump.
libbladeRF: Fixed vendor command to enable RF.
libbladeRF: Moved where legacy warning is printed.
libbladeRF: More backward compatibility fixes.
libbladeRF: copy lusb_flash_read() and lusb_flash_write() functions for legacy

This commit copies lusb_flash_read() and lusb_flash_write() from the before
57116c91, thus allowing devices running <= v1.3 to upgrade properly.
Fixes for Windows build warnings on VS2012
Enable warning as error for Windows
Fixes for warnings found by static analysis build into VS2012

 - The pragma disables suppress false positives from the static analysis
 - The other fixes fix real problems found by the static analysis
Pragma's specific to MSVC shouldn't be used
Fix additional bugs found via static analysis
Close file when done
Added missing NULL check
Fixed some small bugs found via static analysis
_add was missing the set to the backing size, so it would realloc way to much if adding multiple items