k-nearest neighbour

A work in progress.