changed character class to be more generic and started code to dynamicly load character type classes