Fix behavior of `Pry::Output#puts`

This implementation of puts didn't behave correctly in the presence of
multiple arguments or arguments that are Arrays. I changed it to match
the documented behavior of IO#puts, but we might still be missing some
subtleties.