Use GLib.DateTime and TimeZone instead of shelling out to 'date'. Much cleaner, and also fixes periodic freezes caused by spawn_sync() on many timezones