adc_queue: Initial commit

This adds an layer on top of the existing ADC interface to manage
queuing of multiple sample requests. This adds a weak symbol to the
low-level ADC interface, adc_calibration_done, which allows users not
using the high-level queuing interface to be notified of completion of
the calibration process initiated by adc_init.
spi: Make an implicit NULL explicit

In the name of clarity
timeout: Guard against multiple uses of single context
Merge pull request #107 from bgamari/adc-queue

adc_queue and miscellaneous
adc_queue: Add adc_queue_init

This allows one to re-initialize the ADC, ensuring that the queue is
frozen during the process.
Merge pull request #108 from bgamari/adc-queue

adc_queue: Add adc_queue_init
adc_queue: Start queue on completion of calibration