messages: revision is optional for delete
messages: manually deal with optional field in DeleteRequest
messages: Add missing testing on toJson

I thought I was already doing this but it appears not