Throw InvalidArgumentException on empty input

Signed-off-by: Max Fierke <max@maxfierke.com>
Add unit tests for DateTimeUtils. Yay, tests!

Signed-off-by: Max Fierke <max@maxfierke.com>