Use a separate method for input to allow more than one source of input - for now Scanner and Console are supported