Ruby Rogues feedback

Ruby Rogues recently did a [code reading of dotenv](https://www.youtube.com/watch?v=lKmY_0uY86s). It was really interesting. Unless you are one of the 5 people in the world that are as fluent in Ruby as @JEG2, there are definitely some interesting things to learn from it.

Most of their constructive criticism was around the `Dotenv.with` method, which is an internal helper that was added in c11eb70646cd44a58b62fa15205a3ce2336f2331 just to remove some duplication. This attempts to fix some of their gripes.

/cc @JEG2 @cmaxw @dbrady
If you want to preserve that sentiment, you can add `private_class_method :with` after the method declaration. This looks weird because it comes after the method decl, but I just tested it and it does work in 1.8.7. Also, YMMV but when I write iteration helpers, I tend to name them `with_{something}` rather than a bare `with`. Saying `with_expanded_filenames(*filenames)` is a lot wordier, but it eliminates the need for the comment explaining what `with` is "really" doing for/to the module.

Either way, YMMV and this is just my $0.02. Thanks again, this was fun code to learn from!