Threaded, map-reduce and serial implementation of k-nearest-neighbours (Data Mining Assignment)