Stores data about the paragraphs found in the RTF document - the paragraph ID - the paragraph Text - if there are changes in that paragraph
 /// <summary>
 ///     Paragraph has been moved
 /// </summary>
 /// <param name="p"></param>
 /// <returns></returns>
 private bool IsMoved(Paragraph p)
 {
     return p.State == Paragraph.ParagraphState.Moved && p.Text.Length > 0;
 }
 /// <summary>
 ///     Paragraph has been inserted
 /// </summary>
 /// <param name="p"></param>
 /// <returns></returns>
 private bool IsInserted(Paragraph p)
 {
     return p.State == Paragraph.ParagraphState.Inserted && p.Text.Length > 0;
 }
 /// <summary>
 ///     Paragraph contents has changed
 /// </summary>
 /// <param name="p"></param>
 /// <returns></returns>
 private bool IsChanged(Paragraph p)
 {
     return p.State == Paragraph.ParagraphState.Changed;
 }
 /// <summary>
 ///     Paragraph has been deleted
 /// </summary>
 /// <param name="p"></param>
 /// <returns></returns>
 private bool IsDeleted(Paragraph p)
 {
     return p.State == Paragraph.ParagraphState.Deleted;
 }
 /// <summary>
 ///     Adds a paragraph in the document
 /// </summary>
 /// <param name="paragraph"></param>
 public void AddParagraph(Paragraph paragraph)
 {
     Paragraphs.Add(paragraph.Id, paragraph);
 }