Be Gentle - its my first submission and the first bit of Smalltalk I've done in years.
This is basically David T Lewis's TimeZoneDatabase stuff with some extra support for prompting the user to select a timezone and extra logic that only loads all the timezones when the user is prompted to select a timezone. Otherwise it only keeps two zones in memory - yours and the Zulu zone. In addition, there is a bunch of glue that consists of:
* Added ISO 8601 read and write support to Date and Time. * This package also includes a modified version of the TimeStamp class that comes with SqueakMap. The new TimeStamp has been gutted and made timezone aware. It is entirely implemented in terms of PointInTime. Thus, if you change your timezone, all of your timestamps will update accordingly.
TimeStamp also has support for reading/writing ISO 8601 format timestamps and consequently it is now safe to compare timestamps that were generated on different machines because they all reference the same base time.