def aligned?(time, base)
      return false unless (base.year - time.year).to_i % @interval == 0
      return false unless [time.hour, time.min, time.sec] == [base.hour, base.min, base.sec] # the shortest filter we support is for days
      return false unless time.day == base.day || filters(:weekdays) || filters(:monthdays) || filters(:yeardays)
      return false unless time.month == base.month || filters(:yeardays) || filters(:weeks) || filters(:months)

      # wow, passed every test
      true
    end
def aligned?(time, base)
      return false unless (base.year - time.year).to_i % @interval == 0
      return false unless [time.hour, time.min, time.sec] == [base.hour, base.min, base.sec] # the shortest filter we support is for days
      return false unless time.day == base.day || filters(:weekdays) || filters(:monthdays) || filters(:yeardays)
      return false unless time.month == base.month || filters(:yeardays) || filters(:weeks) || filters(:months)

      # wow, passed every test
      true
    end
check if time is aligned to a base time, including interval check