def method_missing(sym, *args, &block)
      result = time.__send__(sym, *args, &block)
      result.acts_like?(:time) ? self.class.new(nil, time_zone, result) : result
    end
def method_missing(sym, *args, &block)
      result = time.__send__(sym, *args, &block)
      result.acts_like?(:time) ? self.class.new(nil, time_zone, result) : result
    end
Send the missing method to +time+ instance, and wrap result in a new TimeWithZone with the existing +time_zone+.