Added Perft test suite. Added promotion code to the movegen. Commit before reworking the legality check code.