spy/cli: don't create a locals dict each iteration
test_decorators: add test_many and test_once
spy/core: make many() no longer an iterator

there was no reason for it to be