def project(*names)
      new(names.map { |name| name.is_a?(Symbol) ? self[name] : name })
    end
def project(*names)
      new(names.map { |name| name.is_a?(Symbol) ? self[name] : name })
    end
Project a schema to include only specified attributes

 @param [*Array<Symbol, Attribute>] names Attribute names

 @return [Schema]

 @api public