Jhbate/edit messages

@kentquirk these changes are based on pushing edits through to clamshell and then blip I have added the created and modified timestamps to messages.

Also as part of the change I have created a validate and formatting process on any incoming messages to save or edit and also on messages that are returned to the user. 
it is returned on the 400 if the edit doesn't meet the requirements. i.e. you need to be editing something weather that is the time or the message or both.

We had the same pattern on incoming messages to evaluated and send back the user (i.e. api consumer ) relevant info on what is messing. Before it was just a 400 and no detail as to why the message or edit didn't pass muster