updates based on code review to eliminate loads(read()), tidy up docstrings, and be a bit more informative to the user with output.