Period.current_month_for returns a range ending today, so Period#days
was the same arithmetic as elapsed_days and pace_factor was always 1.0.
Month-to-date spend was compared against full baseline months, so an
on-pace category read as a large shortfall for most of the month.
Derive the month length from the period start instead, which is also
correct for families using a custom month start. Adds the generator's
first test coverage.