fix whitespace and remove tabs for readability
yes, only one merger per row traversal

this fixes a rare situation:

if you had a row with 11133, and moved right, you would get:

__333

But if you moved left on the same row, you would get:

9_____

Conversely, if you had a row with 33111 and moved left, you would get:

333__

But if you moved right on the same row, you would get:

_____9

A similar situation occurs with vertical moves and similar tile patterns in columns.