def compose(atoms)
      ::Date.new(*atoms)
    rescue ArgumentError
      raise ISO8601::Errors::RangeError, @original
    end
def compose(atoms)
      ::Date.new(*atoms)
    rescue ArgumentError
      raise ISO8601::Errors::RangeError, @original
    end
Wraps ::Date.new to play nice with ArgumentError.

 @param [Array<Integer>] atoms The date atoms.

 @return [::Date]