* GeneParsers namespace is now Headers namespace
* Added "create duplicate gene value" mutation
* Touched up  mutations that add data, by renaming all genes after it +1
* Creating neural organs from genome in 3 stage process
** Identify organs that are attached to parts
** Identify neural networks that are attached to organs
** Create the neural organ and attach it to the organs input and output
signal channels
* Socket information from genome now indexes the list of connected
sockets, rather than any socket at all
* Added BirthsPerGeneration
* Got rid of  poor man boolean lock, just using the timer itself
* Tweaked fitness function to account for
** # parts
** # number of neural networks exchanging signals
* Flattened genome data layout,  no  more nested codon regions
* Took out "smart" random genes, now everything is completely random in
the initial population, except the neural network size, and that's only
because i need to know how many genes to create for the weights
* Added junk data in between codons and regions in initial random
genome.  This prevents creating a linkage group between two adjacent
codons
* Formalized and tweaked fitness function
* Took neural network weights out of the genome
* Converges on nicely complex model pretty quickly with these tunings,
and now there is zero good information in the start population.  they
are just random numbers and codon markers.