Changes to nrf24l01 driver: nonblocking send option etc.

Principal changes:
1. Constructor throws exception on hardware failure.
2. A new method for nonblocking send, blocking send() method amended to use it.
3. Change default speed to 256K: this improves range/error rate.
4. Channel numbers constrained to 125 rather than 127. (As per datasheet.)
5. reg_read_ret_status() method removed. Replaced by a reg_read(STATUS) (simplification of code).
Don't need the comment that it's changed from 127.