Calculate time data for bundle

* Calculate `expires`, `lastModified`, and `secleft`.
* `cache` middleware uses `Expires` response header set by `engine` to
set the expire seconds for cache data in redis.
* Upon retrieving cache data, check its `ttl` and update `secleft`.