Better STI support. Use class.base_class.name for resource_type and author_type to get parent model type.
Should only create Rating and Count on create. Otherwise it will initiate validations and callbacks for rateable instance.