Tty::Engine uses io/console or curses to detect terminal width when possible.
OptionSet requires at least 2 options.
A minimum of 2 options must be specified because $SAFE level 3 does not allow conversion of Strings to Symbols in Ruby 1.8.7.
Explicitly require rubygems for the Shell class.
Tty::Engine no longer uses curses.
If the Ruby installation does not include io/console, the engine will print a warning about incorrect text wrapping.
Missing line break in Shell#test.
Adjust safe level for Ruby < 2.0.
Ruby 1.8.7 does not allow conversion of strings to symbols above safe level 2.