Add AJV Validation for payload envelopes.
While we want to be validation library agnostic, we need to choose one ourselves. So we will pick AJV as it's the most performant. We should be using it on decoding incoming messages, and throwing errors about malformed messages if we come across them.