Genome decode

Worked on decoding Controller genes (mostly, but also Terrain and Model
genes).

Added a property "SetKeys" to each object to check if a Key can be Set.
It greatly simplifies the genome decoding process.

Added an AngVelImp case to the Controller's Set method.

Genome can now decode Pulses and ExtPulses.
% For pulses Ge.Keys{2,k} is a 2 item vector
% 1st item is the number of pulses for a joint
% 2nd item is the joint number

Added TestGen.m to test the new genome functionality. All 3 controllers
can be tested quite easily.