def jump_to_month(month_number)
      # find difference in months
      if month_number >= month
        ZDate.new(ZDate.format_date(year_str, month_number))
      else
        ZDate.new(ZDate.format_date(year + 1, month_number))
      end
    end
def jump_to_month(month_number)
      # find difference in months
      if month_number >= month
        ZDate.new(ZDate.format_date(year_str, month_number))
      else
        ZDate.new(ZDate.format_date(year + 1, month_number))
      end
    end
DEPRECATED, change_ methods in ZTime modify self, this was confusing,
 change_ methods return new ZDate object, they DO NOT modify self
 def change_year_to(y)
   o = ZDate.new(ZDate.format_date(y, self.month_str, self.day_str))
   o
 end
 def change_day_to(d)
   o = ZDate.new(ZDate.format_date(self.year_str, self.month_str, d))
   o
 end
 returns new ZDate object, note this is the MONTH NUMBER, not MONTH INDEX from ZDate.months_of_year
 returns the first day of the month