optionally allow text of a final row of a page to be split to the next page

<i>New pull request based of current master and squashing all commits of branch hb_split_table_rows (#16) and hb_split_table_rows_refactor_1. It is related to issue #3.</i>

This pull request implements an optional feature that will allow rows to be split between two pages. Thus if a text in the last row of a page does not fit onto the current page the row and the text will be split between the current and the next page.

To activate this feature you have to pass the ````split_cells_across_pages: true```` option to the table command.
This pull request also includes an update to the manual describing the new feature.

The new code conforms to codeclimate A rating and due to more good quality code it raises the current average rating of prawn-table. https://codeclimate.com/github/prawnpdf/prawn-table/compare/hb_split_table
The old code has - as far as possible - not been touched. Thus the rating for it stays more or less the same (in fact it is a little bit worse due to a few added lines.)

I'll leave this pull request open for a couple of days before merging into master. Any comments are greatly appreciated.