add Maximum Timestamp option to get always same unix timestamp when using a fixed seed

fix and improve unit tests when setting endMaximumTimestamp

change static maximumEndTimestamp to an optional parameter $max in each
datetime methods

some improvements to DateTimeProvider max timestamp