fixes issue #3

This fixes issue #3.

Earlier code checked on a cell by cell basis if it fits on the page. Now when the first (column 0) cell in a row is evaluated it checks if the whole row fits on the page otherwise breaking to a new page.

I added a function height_with_span to cells.rb which returns the height including any spanned cells if the spanning cell is the master cell. 

The height method (cells.rb) is a little misleading. It returns only the height excluding spanned cells.

To ensure the row heights calculation is not run unnecessarily it will only be done on the first (column 0) cell in a row.