Fix #565 and #793 render_user_form doesnt pass payload and timezone default

- Pass the appropriate payload when calling render_user_form from
profile and user_form. Register should not pass a payload because the
user hasn't been created, yet.
- The timezone should default to site.default_user_timezone if the
$user->timezone is not set. The $current_user->timezone should not be
used, since this may be the admin's timezone rather than the user's
timezone or the site's default timezone (especially in user_form).