fixes #8049 - Add timezone to user

Adds timezone attribute to user, and sets the time according to the user's timezone
Problem is, the current user’s time zone will leak across to the next request on the same thread. If the next one is by a logged-out user, all times displayed on that next request will show in the first user’s time zone.
taken from http://ilikestuffblog.com/2011/02/03/how-to-set-a-time-zone-for-each-request-in-rails/