A Block Pusher Robot Using Finite State Machines