Fix bug with month and year diff calculation

This fixes a bug where the month and year difference calculations were wrong. There are now more tests to make sure all threshold units are accounted for.