chooseSize :: SinglePlayer -> IO Int
  chooseSize p = do
    putStrLn "Please choose the size of the board:  "
    n <- getInt 
    if n <= 0 
      then do
        putStrLn "Illegal number, must be greater than 0"
        chooseSize p
      else
        return n
chooseSize :: SinglePlayer -> IO Int
chooseSize p = do
    putStrLn "Please choose the size of the board:  "
    n <- getInt 
    if n <= 0 
      then do
        putStrLn "Illegal number, must be greater than 0"
        chooseSize p
      else
        return n
chooseSize p = do
    putStrLn "Please choose the size of the board:  "
    n <- getInt 
    if n <= 0 
      then do
        putStrLn "Illegal number, must be greater than 0"
        chooseSize p
      else
        return n