WIP: Modified Date types to allow use of Float for definitive periods.

modified Types such that Year and Month are part of CalendarPeriod wrapp...ed around Int
Week, Day, Hour, Minute, Second are wrapped around Real to allow for both Int and Float types
Millisecond remained wrapped around Int
Ref Issue #9393
Making the field type abstract is going to ruin performance, unfortunately.