Leap year

Fix leap year calculation:
- take year into account when calculating number of days in a month
- years 2000, 2400 etc. are leap years