Added the CharGene type.
Added the BaseGene methods. Refactored the gene type definitions to use PropertySchema.