utils.split_range: Split into not overlapping ranges
Existing listers use the is_within_bound [1] method from the base lister.
This method uses inclusive boundaries in all cases.
As some "range" task listers [2] [3] are using split_range function to create
"overlapping" ranges, this can cause concurrent insert issues down the line [4].
This commit adapts the function split_range to make the generated ranges no
longer overlap.
[2]
https://forge.softwareheritage.org/source/swh-lister/browse/master/swh/lister/gitlab/tasks.py$37-41
[3]
https://forge.softwareheritage.org/source/swh-lister/browse/master/swh/lister/gitea/tasks.py$36-41
Related to T2577