Clean-ups

As far as I recall, the major changes in this branch are: 
Sorry about some of the random re-spacing..

Version bumps:
* scala => 11.1
* breeze => 0.8
* scallop
* scalalogging
* scalatest
* sbt => 0.13.5

Removed bundles sbt-launch and build script. I did this thinking that it was preferable to be in line with how breeze is distributed, but I guess since Nak may be more geared towards letting people run the examples and explore a bit more, it might be desirable, and wouldn't be hard to add back in.

Distance Metrics
* Set of basic distance metrics implemented as breeze UFuncs, with type of each explicitly bound to a type variable so they can be easily specified as generic arguments, since the implicits need to be explicitly specified (not obvious which DM should be used otherwise)

Averaged Perceptron Trainer
* Added averaging version of perceptron. As David mentioned in one of the threads, it'd be nice to make weight averaging applicable to any trainer in some way.

kNN
* Simple implementation of kNN using breeze's mutable.Beam

DataMatrix
* Updated to use DenseVectors rather than Seq
* Added type param for labels

Iris Dataset
* Added this to use for kNN test code

Added some explicit type bounds to help out Intellij

Updated a few scaladoc comments.