parse_optional_range() no longer fails on start == 1

It also is tested, more robust, and allows whitespace.