main: use new LegalMove method to check play command input
core: treat ko as empty in Board.String