implement basic game loop with move parser, compile optomization, fix array indexing error in move gen, reimplement perft functionality