Timber image https

Two quick fixes:
* (Maybe) secure every URL going through `TimberImage`.
`TimberImage` currently ignores SSL (see #193), this fixes that.


* Cache `wp_upload_dir`
`wp_upload_dir` can get called very often using `TimberImage`, depending on your use. `wp_upload_dir` look to the filesystem at every call, which is a waste, so I added an internal `TimberImage::wp_upload_dir` that caches the upload dir.