Added a tags property which is used to store a list of all tags seen during
training so this list can be used during testing to produce the same integer
categories for the classifier that it was trained on.

Also changed the default so learning is on during testing unless disabled. This
makes more sense because disabling learning for testing produces different
accuracies than those shown during training.
Changed this module to store historical value indexes for each parameter
instead of the actual values.  This is more efficient, but more importantly
it fixed a bug where copying the last set of values when appending to the list
resulted in pass by reference instead of pass by value which destroyed the
value history of some parameters.
Cleaned up the code a bit since these files will serve as examples of how
to use this tool kit.