Puzzles and (equivariant) cohomology of Grassmannians