RangeTest: add some exclusive float tests

Floating point limits are never exclusive.
Added GenTestCase

This is basically a stand-alone version of
SingleAndMultiRangeNextTest.TestCase.
Added SinkTestCase

This is basically a stand-alone version of RangeTestHelper.TestCase.
SinkTestCase: make duplicate calls illegal

Trying to add multiple accepts/rejects tests fails with a
IllegalStateException.
GenTestCase: make duplicate calls illegal

Trying to add multiple tests used to fail silently (the old test
was replaced with the new test). This could potentially be confusing.
Now the attempt fails noisily instead.

For consistency, trying to set the generator multiple times also fails.
SinkTestCase: make duplicate sink illegal

For consistency, setting sink multiple times results in an exception.
This makes SinkTestCase and GenTestCase behave the same.
SingleAndMultiRangeNextTest: use GenTestCase

Removed the nested TestCase class in favor of the new standalone
GenTestCase class.