extract socos.utils.parse_range, add tests