Started porting and adapting code from Date4J