Pure functional date/time API. Work in progress,