Fix a stack overflow in getWordsTillSig

Some zip files can trigger a stack overflow in getWordsTilSig.  I saw a crash on ghc 7.6.3 but not 7.8.2, possibly due to the different versions of the binary package.  To reproduce on 7.6.3, build the Zip executable and run `zip -l` on this zip file:

https://github.com/downloads/github/android/github-android-1.5.apk

This proposed change stores the accumulated list of bytes on the heap.