added an html alternate message, rewrote how messages are created and sent