Handle corner case on adjacent inclusive time ranges
Our time ranges are inclusive intervals (at least we index them as such) and hence intervals which only touch but do not overlap should still be merged. One example for why this is necessary are the Thru.de PRTR reports like this one which use TimeRange::whole_year
and end up with multiple ranges instead of a single one spanning multiple years without this change.