Load the moves of a game stored in Portable Game Notation.
options is an optional parameter that contains a 'newline_char'
which is a string representation of a RegExp (and should not be pre-escaped)
and defaults to '\r?\n').
Returns true if the PGN was parsed successfully, otherwise false.
The move function can be called with in the following parameters:
.move('Nxb7') <- where 'move' is a case-sensitive SAN string
.move({ from: 'h7', <- where the 'move' is a move object (additional
to :'h8', fields are ignored)
promotion: 'q',
})
or it can be called with a Move object
It returns true if the move was made, or false if it could not be.
Returns a list of legals moves from the current position.
The function takes an optional parameter which controls the
single-square move generation and verbosity.
called when the initial board setup is changed with put() or remove().
modifies the SetUp and FEN properties of the header object. if the FEN is
equal to the default position, the SetUp and FEN are deleted
the setup is only updated if history.length is zero, ie moves haven't been
made.