progress on Message.cs