Handle the real semantics of String#lines...
The previous monkey-patching of String#lines and IO#lines led to their
behaving differently in our code than in standard Ruby code. This is
generally surprising, and led to some subtle misuses of the method.
This corrects that, by adapting all the abusers to real Ruby calling
conventions over the enumerator interface.
Signed-off-by: Daniel Pittman <daniel@puppetlabs.com>