Connection string builder

Add a class to describe a connection string value, which handles default values and some conversions.
All values now get a descriptor with defaults.
Remove field initializers, set all defaults using descriptors.
Eliminate some redundant keyword table lookups.
Simplify and make more efficient SetValue().
Get values via this[] directly from the private fields rather than base class storage.