Call deep_copy for terms again

It turns out we can't treat terms as immutable because one can assign
into their elements using []'s.
Compute single line width for arrays and hashes like in expression lists

The computation structure should match the emitted code structure.
Ruby AST: Simplify array emitting code a bit
Ruby AST: Simplify hash emitting code a bit
Ruby AST: Simplify expression list emitting code a bit
Merge branch 'master' into comments

Conflicts:
	lib/y2r/ast/ruby.rb
	spec/y2r_spec.md