Removed IsPrimitive in favor of subclasses.