Added appropriate detection & response strategies for changing heterogeneous NN particles.
Added a problem interface, a problem, a new particle type and corresponding fitness calculator.
Modified EntityType by adding enumerations for a heterogeneous architecture NN particle.
Added 3 measurements that are based on a particles hetergeneous NN architecture.
Large refactor of detection and response strategies.
Refactor to increase code reuse in EntitySpecificNNSlidingWindowTrainingProblem.
Large refactor of detection and response strategies,
attempting to fit in a particle specific environment
change and response into the existing framework without
too much code duplication :/
Added growing of a NN representing particle by one hidden unit,
and maintaining a homogeneously sized swarm with every grow.

Methods require testing.
Added prune logic.
Fixed mistake in grow logic - was giving ever grow method the candidate solution.

Prune logic still needs testing.
Added logic for detecting grow conditions:
  - error spike detection
  - personal best stagnation: is slightly naive and should rather be a "close to epsilon" approach if it's realistically going to work in dynamic environments with many particle reevaluations.
Added sensitivity analysis detection strategy, specific to heterogeneous NN architectures.
Added support methods in the corresponding Problem class.
Refactor & fix errors in the corresponding response strategy class.
Refactored mistake of placing sensitivity analysis in a detection strategy.
Moved it into a response strategy.
Sensitivity Analysis needs to be tested.
Added robels generalisation factor overfitting detection test on a per entity basis.
Added a validation error growth test for overfitting in the same detection strategy.
Both need to be tested.
Fixed problem with calculating the # of hidden units given I, K, and size of the vector.
Added a bitmask and dynamic environment specific pbestupdate strategy.

Strategy increments stagnation counter only if change in fitness is
larger than some epsilon control parameter.

Strategy also maintains a corresponding bitmask (BEST_BITMASK) indicating
relevant and irrelevant dimensions with 1s and 0s.

Refactored and cleaned up some code in the detection and response strategies.
Added missing tracking of number of best hidden units in the entity specific NN architecture.
Added entity based NN classification measurements for training, generlisation and validation sets.
Refactored some entity specific measurements classes based on MSE measures.