Use localization for server default timezone on Special:Preferences
The timezone list on Special:Preferences contains all time zones with a
localized region and also an option to use the system default value.
The message for this option gets the current server timezone as
parameter, but that parameter is not localized.
Refactor the timezone list processing into a new function and call it at
the beginning to do a lookup for the localized name and use it, if it
exists in the array.
Also changed from procedural style to object oriented style for the
DateTime processing.
Bug: T33516
Change-Id: I00e81324d0d16fbe6c9811480210ab6513461823