moves the io interaction from setup to command_line_io
refactors creating new players