Option to allow batches to be unbalanced

allow_unbalanced_batch has been added for the purpose of suppressing the recently-introduced croak if credits and debits in a batch don't net to $0. The croak makes sense if you're debiting some accounts and crediting those debits to other accounts, but it incorrectly dies when your batch is purely credits (e.g. issuing refunds), purely debits (e.g. billing people for a service) or an unbalanced mix of the two. Thus, having an option to suppress the croak is necessary. To not break any code using this module, the default behavior hasn't changed; one must explicitly allow for unbalanced batches.