code: function(rows, columns) {
          var i, l;
          
          // remove extra rows
          while (this.grid.length > rows) {
              var row = this.grid.pop();
              for (i=0, l=row.length; i<l; i++) {
                  var tile = row[i];
                  this.destroyTile(tile);
              }
          }
          
          // remove extra columns
          for (i=0, l=this.grid.length; i<l; i++) {
              while (this.grid[i].length > columns) {
                  var row = this.grid[i];
                  var tile = row.pop();
                  this.destroyTile(tile);
              }
          }
      }
docs: Method: removeExcessTiles
  When the size of the map or the buffer changes, we may need to
  remove some excess rows and columns.
  
  Parameters:
  rows - {Integer} Maximum number of rows we want our grid to have.
  columns - {Integer} Maximum number of columns we want our grid to have.