Removed to_s, which can depend on user modifying the default format. Replaced with strftime for exact format.

A cleaver user on my system changed the default date format, which created all sorts of bad parsing problems.  A 2 digit year, yielding a millenium bug!!! 13 years after the fact...

formats = {
  default: "%b-%d-%y %I:%M %p"
}
Time::DATE_FORMATS.merge!(formats)

Time.parse, converts the %y to 0013... which was quite a surpize.

The new code uses strftime to specify the exact format to be parsed, instead of choosing a default (which can be reset by the user)

All tests pass.

Thank you!