Add start_transaction() method
Allow quantity of line to be split, wrap updates in transaction