Fixed LocalDate::toString() year padding
Refactored LocalDateTime tests, removed isBeforeOrEqual() and isAfterOrEqual()

The two ...OrEqual() methods do not make much sense for a date-time, and the same result can be achieved with !isAfter() and !isBefore() anyway.
ZonedDateTime::parse() is now fully implemented
Added support for negative years
Renamed YearMonth::getNumberOfDays() to getLengthOfMonth(), added getLengthOfYear()
Added comparison methods to YearMonth, removed toInteger()
Fixed exception messages
Added ZonedDateTime microsecond support, improved time-zone support
Replaced DayOfWeek::getName() with __toString(), removed dependency on native PHP function
Added getDayOfYear() to LocalDate, LocalDateTime and ZonedDateTime
Refactored unit tests around a base abstract class