Tidy up the entire promise chain around getting, processing and deleting messages