class Time

def use_zone(time_zone)

Allows override of Time.zone locally inside supplied block; resets Time.zone to existing value when done.
def use_zone(time_zone)
  new_zone = find_zone!(time_zone)
  begin
    old_zone, ::Time.zone = ::Time.zone, new_zone
    yield
  ensure
    ::Time.zone = old_zone
  end
end