Added new types of roullete selection

Add more three types of roullete selection:
- linearFitness
- expFitness (exponential)
- linearScore
- expScore

Added selection_type enumeration
Added set a get methods on simulation to configure selection type
Thread Engine

Added thread simulation capabilty with a new motor named thread_engine.

- thread_engine not yet tested and debugged.

- changed minor sintax of global code for better integration
Merge pull request #8 from PintosGregorianos/engine_development

Engine development