Optimize large repetitions.

This takes the .* indexing last time from 22s to 13s on my machine
(where most of the time is spent doing math on longs).
Add fastdivmod
Temp code that uses fastdivmod
mostly fixed, squash this and reindent
Add benchmark scripts (run the shell one)
Add caching sequence.

This is so that bisect can index into the sequence, and we can use one
of two functions to generate the values lazily.  For _very_ large
numbers (multi-gigabyte binary representations) this is a big win.
Add powersum; fix bug where digits_per_chunk = 0 causing infinite loop.
add cachingseq binary search
Benchmark bigger nubmers too
Avoid unnecessary comparisons and calculations with longs.

This switches behavior depending on whether the target index fits in an
int or not.
Remove comments and such.
Bench changes
Add test to confirm correct output around break point
Remove a couple of comments
Use regular divmod below a limit (it's faster)
Better documentation of chunk size calculation
Two minor optimizations to sre_yield:

- don't bother iterating counts and dividing when there's only one item
  (the common case in my benchmarks)
- use divmod_iter which switches now.
Benchmark script for fastdivmod
Rename functions in fastdivmod so they make more sense.
Reindent to PEP-8