Added time-out check, so we by default time-out after 1800 seconds, unless otherwise told by parameter
Protected against strange table names what could break, especially if the seed table has null data in it
Added some logging to help indicate progress

Especially when watching it like a boiling kettle :)
Stop after the first time we do less entries than the batch size.

This especially happens on a very active table, where between us doing
batch X and batch Y a few rows are added to the list by the time moving
sufficiently making the cut-off catch more records (seconds later)