CRM-13379 disable button on Contribution_Main form after click to prevent multiple submits

@totten @colemanw this is building on previous discussions about disabling the form buttons.

The extra commits will hopefully drop out of the log once the other PR I have is pulled (or this could be pulled instead - the test & whitespace fixes are unrelated)