Respect Cache-Control headers in addition to Expires in JsonClient

At present, only Expires headers are used to set the
cache length period for a request. This modifies
the `response_cache_time` method to look for a
`Cache-control` header in the first instance, and
then fall back to the `Expires` header if it is
not present or does not contain a `max-age` or
`no-cache` directive.
Swap out the double negative

Oh ActiveSupport `present?`, where art thou?
Add some comments to the method to explain what we're looking for
Make sure we're setting cache expiry times in UTC
Merge pull request #82 from alphagov/respect-cache-control-headers

Respect Cache-Control headers in addition to Expires in JsonClient