Data structures and solver for the 2048 game