docs: def date_this_month(self, before_today=True, after_today=False):
          """
          Gets a Date object for the current month.
  
          :param before_today: include days in current month before today
          :param after_today: include days in current month after today
          :param tzinfo: timezone, instance of datetime.tzinfo subclass
          :example DateTime('2012-04-04 11:02:02')
          :return DateTime
          """
          today = date.today()
          this_month_start = today.replace(day=1)
  
          next_month_start = this_month_start + \
              relativedelta.relativedelta(months=1)
          if before_today and after_today:
              return self.date_between_dates(this_month_start, next_month_start)
          elif not before_today and after_today:
              return self.date_between_dates(today, next_month_start)
          elif not after_today and before_today:
              return self.date_between_dates(this_month_start, today)
          else:
              return today