refactors all date management to utility fns