KNearestNeighbour Search, Vector ToString, XOR Test Set Added

First, when it comes to debugging we use toy datasets to ensure we have
no off by one errors, and that systems are capable of solving trivial
problems.  XOR has been added in the standard format using generics.

Second, a ToString function for vectors has been added to show the first
X (4 here) doubles in a vector to 4 decimal places precision, followed
by a +234...] at the end if there are more double values not shown
(truncated).

Finally, a K Nearest Neigbour Search has been added - it accepts a
DeltaFunction that is intended to be attributed to the Candidate Vector
as shown in the XOR example in Main(). In this way distances (or inner
products, Dot product, etc) can be substituted in freely.