CRM-15578 - Mailing API - Move submit() logic from client-side to server-side

This makes it easier to re-use (e.g. submitting the constituents of an A/B
test) and easier to secure (e.g.  when using CiviMail advanced workflow).