Renamed generic to generic_types.
Added generic_name define
Added asserts for generic type names to generic types unit tests