move over an old test
fix error in test
use correct upper/lower bound in legacy mode, tidy
pull old tests over, with a few small changes
emit events before callback, and implement value and key streams
handle ranges properly
tidy
clone instead of mutating
deps
handle other the various ways of describing a range