fix issue with wrong count on bucket_span == count(..interval)

- add spec for the edge-case
- remove unneeded operation in ring-key calc (x + y % y == x % y)