Fix bug that quit notation assignment early
Include en passant in legal moves
Move en passant
Do not need to specify encoding
Combine integration spec shared examples

So we don't run the expensive/slow calculation three times per game