The L-game consists of a 4x4 playing grid and four playing pieces. There are two "L" shaped pieces (knights move in chess), and two coins. Each turn, a player must move and L followed by (optionally) moving a coin. If a player is unable to move an "L" to a valid position, they lose the game. https://en.wikipedia.org/wiki/L_game
Define a python class and object oriented approach for the L-game for future integrtion in an ML (NN) model.