Add support for ActiveSupport's TimeWithZone class

This ensures that TZ data is not stripped. Users will still need to parse the time from the string, but at least it will be serialized correctly.