iterator: use snapshot from creation time

We're currently creating iterators lazily - the first time we call `iterator.next` it's created, and previously that was the time when the implicit snapshot was created.

After this patch, we create the snapshot when the iterator is created.

There's a test in https://github.com/rvagg/abstract-leveldown/pull/28 that fails without this test