Process input files in parallel
Use array module for faster line lookup
use binaries instead of lists for memory savings
Reduce memory usage

Only spawn 1 process per core (scheduler)
Processes send binaries instead of lists (pass ref instead of copy)
Merge pull request #4 from garret-smith/master

Speedups & memory improvements, thanks Garret