Simply returns the points in time that correspond to turn of month.

def finite_datetimes(self, finite_start, finite_stop):
        """
        Simply returns the points in time that correspond to turn of month.
        """
        start_date = self._align(finite_start)
        aligned_stop = self._align(finite_stop)
        dates = []
        for m in itertools.count():
            t = start_date + relativedelta(months=m)
            if t >= aligned_stop:
                return dates
            if t >= finite_start:
                dates.append(t)