CRM-13397 js, contribution form - generalise  button double submit prote...

...ction and add to contribution.main to prevent double submits where people have no confirm page

Conflicts:
	js/Common.js
	templates/CRM/Contact/Form/Task/EmailCommon.js

Conflicts:
	CRM/Contact/Form/Task/EmailCommon.php
	packages
	templates/CRM/Contact/Form/Task/EmailCommon.js