Derive Generic instance for URI with GHC >= 7.6

If GHC >= 7.6 with base >= 4.6 is used, `Generic` is derived from
`URI`. One benefit is the automatic generation of a `Hashable`
instance for `URI`s. See

https://hackage.haskell.org/package/hashable/docs/Data-Hashable.html