How do you make a character navigate along a grid in the BGE? I am currently developing a concept of a game, and a critical part is the character navigation. The game is based on a 2D grid, and I need to be able to navigate one block at a time, in only straight lines.

If it makes it easier, the scaling is non-critical, so grid blocks can be one Blender unit.
Your request is pretty simple. 

Limit any movement to:


90 degree turns
steps of 1 BU size
do not use the physics engine


This assumes you want to move in discrete steps (in frame t the object is at A and in frame t+1 the object is at B without any intermediate steps).