fixes Bug 984583 - added abandon transaction behavior

the Bugzilla crontabber job uses an Exception for control flow.  There is a complicated transaction that is started, but near the end, we can finally recognise that the transaction is not useful.  The original code just raised an exception and let the TransactionExecutor roll the transaction back.  However, the TransactionExecutor logs it as an error even though it was intentional.

This PR adds the ability for the TransactionExecutor to abandon a transaction if the exception was raised intentionally and has the attribute 'abandon_transaction'.  
In Socorro there are 152 exception handlers that name the exception "x" while there are 60 that name it "e" and 18 that use "msg".

In loops, "x" is used 317 times, as opposed to "i" 85 times, "k" and "c" 18 times,  "d" 17 times, "b" 5 times, "a" 3 times, "e" twice, and "n" once.  

Remember the Dr Suess story of the mother that named all her children "Dave".