Add more accurate leap year count.
Refactor first_sunday removing base case.