Major enum overhaul, prep for Strings

Overhaul enum parsing, in preparation for bringing in a String typed
FVec.  Basically if a current Enum-typed column would overflow and "flip
to all NAs", instead it will flip to a String type column.  Enums are
now kept locally fully sized - no dropping at 65K - in case the column
will become a String col.  Enums are also rolled up globally, but this
global rollup can overflow & get killed.  Drop the EnumFetchTask.
Heuristic for Enum cols changes: if it's all NAs, it's an all-NA column.
If its all Enums or NAs, then Enum col.  If all Numbers or NAs then a
Number column.  Otherwise majority (of strings vs numbers) wins.  Too
broken to have 1 number flip a column of all valid Strings to all NAs
(with 1 number).
Do not convert ValueStrings to Strings - the conversion is lossy; always
preserve ValueStrings until a single final conversion into the
Vec._domain[].  Lossy conversion will make some enums appear to go
missing (and trip asserts).
ValueStrings drop the "skipped chars" notion, vastly simplifying their
code.  This means fields like "This field ''has embedded quote''s" will
preserve the double-inner-quotes.  Warn about lossy conversion to
Strings.
Handle times on the 1st line (as opposed to headers).
Some better comments and pretty-printing of NaNs