Returns this date-time with period added to it.
Years are added first, then months, then days. If the day exceeds the maximum month length at any step, it will be coerced into the valid range.