more robust time_zone handling, some more docs