/// <summary>
            /// Add new Expression
            /// </summary>
            /// <param name="author">Author of Expression</param>
            /// <param name="content">Content of Expression</param>
            /// <param name="attributes">Additional attributes that should be set for Expression</param>
            /// <param name="belongsTo">Conversation This Expression belongs to</param>
            /// <param name="inReplyTo">The Expression being replied To</param>
            /// <returns></returns>
            public Expression Expression(Member author, string content, IDictionary<string, object> attributes, Conversation belongsTo, Expression inReplyTo)
            {
                var expression = new Expression(instance)
                {
                    Author = author,
                    AuthoredAt = DateTime.UtcNow,
                    Content = content,
                };

                if (belongsTo != null) expression.BelongsTo = belongsTo;
                if (inReplyTo != null) expression.InReplyTo = inReplyTo;

                AddAttributes(expression, attributes);
                expression.Save();
                return expression;
            }
 /// <summary>
 /// Add new Expression
 /// </summary>
 /// <param name="author">Author of Expression</param>
 /// <param name="content">Content of Expression</param>
 /// <param name="belongsTo">Conversation This Expression belongs to</param>
 /// <param name="inReplyTo">The Expression being replied To</param>
 /// <returns></returns>
 public Expression Expression(Member author, string content, Conversation belongsTo, Expression inReplyTo = null)
 {
     return Expression(author, content, null, belongsTo, inReplyTo);
 }