Fix seekEOCDR: don't search entire file.

For a large file missing EOCDR, zip.js can freeze or even crash browser.
This implementation is incorrect. The buffers should overlap, otherwise the the EOCDR might not be found. In your example, that would be the case if EOCDR is at offsets 42,43,44,45.

I suggest to read a bigger buffer size (if available), e.g. `bufSize = 1024` bytes, because I think that there is a non-trivial amount of overhead in reading the bytes, so continuously reading 22 bytes (where at least 3 bytes overlap) is going to be a waste of resources.

And also make sure that when you seek the magic number, that you don't read past the buffer, by making sure that you start end reading at `bufSize - 4`.