Fix bug in Timezone.diff, add more tests