Added user timezone cache

This is what I was thinking we could do for the timezone cache in the middleware and get_timezone methods.