It would be nice to later add an option to pass a function to process chunks as they come, but this is good for now.