DataReader does not maintain state, so there's no need to keep an instance of it.
Fixed multiple misspellings and split memoization into its own method.
Merge pull request #12 from gwagener/data_reader_class_methods

DataReader does not maintain state, so there's no need to keep an instance of it