Add optional FileReader to FileAPIReader.

This allows a user to set an external FileReader instance, therefore providing the ability to reuse the same FileReader instance in serial reads for better memory management.
Merge pull request #25 from dashersw/master

Add optional FileReader to FileAPIReader.