- Renamed files ColDate* to ColTypeDate*.
- Renamed objects ColumnDate* to ColumnTypeDate*.
- This is mainly to make way for ColType{Duration,String,Numeric}, while leaving
ColString untouched. ColString is used only for ViewText columns, but may soon
be replaced by ColTypeString. Unknown.
- Some bad inefficiencies in date formatting were noticed, and when addressed,
caused a bug to surface. The length of a formatted date can be calculated
from the dateformat, but was done incorrectly. Very, very incorrectly.
- Added unit tests.
- Promoted date column-specific "countdown" size measurements up to the ColDate
base class. This neatly falls out from work on #1218.
- Noted a potential I18N problem in Date.cpp.
- Refactored column objects to contain a ::validate method, for the
validation of incoming data.
- Context.columns is now a vector of one of each column object,
indexed by attribute name, for validation purposes.