Ok, so we've now got a stack overflow when checking the possible moves for a king, which checks the possible moves for enemies, etc. Maybe we need some sort of distance check to short-circuit things for now?