Cache time.Location for Performance

Previously a new time.FixedZone was created for every single time
fetched from the database. This is an immutable structure that is
somewhat expensive to create and so should be cached. Benchmarks
indicate slightly under a 20% speed improvement with a reduction in
allocs from 5 to 2 and a reduction in memory allocated from 213 bytes to
66.