KnCMiner driver generation 2

Note: Requires generation 2 code in the FPGA controller.
Missing closing zero in api string
Change priority of some log messages
KnC: cleanup statistics a bit
KnC: Update ASIC library to current version
KnC: Framework for async SPI messages
Update knc-asic library to current version
Correct SPI buffer management
Update to newer knc-asic version with knc_decode_response()
knc_transfer() for transferring requests using async SPI
Switch to async SPI transfer model
KnC: Limit SPI transfers to 4KB. Beaglebone SPI kernel driver doesn't handle bigger transfers
KnC: Use consistent naming on the transfer functions
KnC: Correctly associate reports with their originating core
Prepare for pending slot during setstate
Update knc-asic to current version adding knc_decode_report
KnC: Use knc_decode_response() to make response processing more readable
KnC: Catch communication errors again, blocking cores which repeatedly fails communication
KnC: Recover automatically if core state and cgminer state gets out of sync

handles communication errors, reset cores, and other situations where cgminer core state and actual core state gets out of sync
Update knc-asic to current version, fixing next_state response bit decoding