Add support for big files

Fixes issue #1. Too big buffer caused the broken pipe error. Worth
noticing is that spitting text into chunks must be performed differently
depending on Ruby version. In 1.8.7 the best seems to be array slicing
while on higher versions Regex scan is fast and robust. The max chunk
size is determined by max range Regex value.