The Q version of the async stuff in knn.js.
Cleaning up the example and knn.js async-wise. Prepping for workers.