Group functionality: group avatars, group updates (full support), group leaves

group functionality: 
• group avatar support 
• group update support (full comptibility iOS/android)
• group leave support
separated out the message creation from the send, to perhaps allow reuse of send code with multiple different types of message sends.