Running the GA

Made a bunch of changes...
* Small change in controller's ClearTorques to correct a bug when using
only 1 pulse.
* Genome now has a crossover type property.
* When instantiating Genome, KeyLength and KeyExtras are defined before
calling SetKeys and SetRange.
* Added new method SwitchDir to turn around a controller that moves
backwards.
* Slowly deleted transferred code from old algorithm.
* GetTopPop now takes only the number of top sequences desired and uses
the fitness data from within the MOOGA object.
* Added a few properties to MOOGA to make it work like an actual
optimization algorithm
* Added some fitness functions to MOOGA.
** STILL MISSING: Energy fitness and Stability fitness **
* Sim can now be passed a figure handle so it won't open a new figure
* Ground clearance is checked again after going through all the events.
THIS NEEDS MORE TESTING. THIS. IS. SPARTA!!!
* Sim.Out now has also the intended 'tend'
* Initially set Once to 1, as should be
* Re-wrote TestGA completely. Now it tests the genetic algorithm like
it's meant to be. Unfortunately didn't have time to think of easy ways
to keep a simple test of MOOGA now that the Run method exists (unless
it's not used).
* Added InitGen method to MOOGA. It initializes the optimization
variables: Seqs, Fit, randomly or using a provided input file.
* Added Run method to MOOGA. It runs the optimization algorithm: runs
tests and uses fittest results to create new generation.