Game semantics for first-order logic (Logical Methods in Computer Science, 2010)