Homestyx hydra

R1:a8c9a5597d64

Improve error and header behaviors for Mailgun received mail webhook

Summary:
Ref T10709. Two issues:

- If a user sends an invalid `!command`, we can throw, which means we don't return HTTP 200. This makes Mailgun re-send the mail later.
- We don't parse headers of the modern API correctly, so the "Message-ID" failsafe doesn't work. Parse them correctly. I //believe// Mailgun's API changed at some point.

Test Plan:
This is difficult to test exhaustively in isolation. I used Mailgun's web tools to…
Repository: R1 hydra
Commit Date: Apr 2 2016