Move generation and perft

Added move generation for all pawn moves besides promote and perft. No
check checking yet or castling. Perft results accurate for 3 plys then
checks start to kill it. It runs only at 890k nps or so :/.