This commit adjusts the previous commit re. the new `ToTimeInDefaultLocationE` and related functions.
The functional change is that we don't default to any location if not provided from the caller.
This is in line with how `ToTime` worked before we started this, and even if the default behaviour may look weird in some cases, it will not break anything.
Most applications will want to use the new *InDefaultLocation functions and decide which default location to use:
```go
loc := time.Local
if config.Location != "" {
loc = time.LoadLocation(config.Location)
}
t, err := StringToDateInDefaultLocation("2019-01-01", loc)
```
This commit also configure Travis to test on OSX and Windows in addition to Linux.
Go's time parsing uses UTC when the format doesn't have a tiemzone, and
has even weirder behavior when it has a zone name but no numeric offset.
A caller to `cast.ToTime` won't know if the returned time was explicitly
in UTC, or defaulted there, so the caller cannot fix it. These new
functions allow a user to supply a different timezone to default to,
with nil using the local zone.