Add cancel parameter to Keys[Prefix]

@philips, I believe this is the same API as your PR #14, with a few tweaks to abide my particular style idiosyncrasies :) OK from your side? 
This is a race, because by the time you reach a go routine might have schedule to "refill" the channel. You need to cancel before testing for any entries.