move Key class to bottom of file
combinatorial_optimisation checked against NILMTK v0.1 demo and seems
to train correctly (although numbers are a little different, probably
because I haven't finished implementing all preprocessing yet)