Importing code into GIT
Simple fix in a demo_fractal.py
Cache fitness instead of calculating it each time.
Fixed genes factories
Loading a genome from the config file + demo.
Loading a population class from configuration file.
Small optimisations + whitespace cleanup

Single BUG fixed (gene1, gene1, instead of gene1, gene2)
 mostly irrelevant.

Times [s] before:
Salesman 10gens: 10.997, 10.974, 11.047
Quadratic 11gens: 0.954, 0.958, 0.951

after:
Salesman 10gens:  10.595s, 10.654s
Quadratic 11gens: 0.8634, 0.8645, 0.8634
Parallel processing of fitness.

Included one example which simulates load using sleep()
and handles concurrency using python threading + queue.
Issue1: Remove psyco / fix fltk (font)
Issue2: Fitness_cache in organism not defined.
Issue2: Better fix (more consistent)

Previous fix was to eager, Malderete idea was much better,
I've decided to do it a bit differently though - just like
it's done in MendelOrganism and Organism, so - via __init__.
Alters the code a bit less.
Collected changes from the kufo fork.

- Cleaned up a demo           661c0b5748e4e3
- More making demos look nice e928e818c7d86b
- Comment clarification (.)   720f2fdb0cb933
- Cleaning up more demos      702dc6fcf17e8e

I've stripped Python 2.7 only changes so it can still
work with 2.6. I've ignored spaces->tab changes.

Signed-off-by: Tomasz bla Fortuna <bla@thera.be>
Small fixes.
Fix to the mating algorithm.

Mistake was spotted by Justin Lanahan. Thanks A LOT.

I've run tests afterwards with the test_quadratic.
a) In 10 runs the average count of generations to find
a solution dropped from 104 to 75:
Fixed: (54+17+42+39+103+79+115+53+153+102)/10
Unfixed: (71+126+73+176+130+155+69+106+84+57)/10

b) When reexecuted on 50 runs difference was smaller (113 vs. 98.34)
 but still better after the fix.
Genome configuration can be passed as a string.

ConfigLoader is now able to read configuration from filename
or directly from a string with filecontents. This helps
when doing parallel computing on different machines
- configuration files don't need to be synchronised.
Small various fixes.

Genome - two typos,
unreachable code and probably some typo
ConfigLoader error handling + cloning gene parameters
Fixed gene cloning.

Stupid mistake.
Added two new genes RandRange.

Int + Float version of RandRange:
During gene mixing select a random value between
values of two mixed genes.
Typed Genetic Programming introduced as optional.

Functions and Vars can now be defined as typed, as well as the problem itself.