anchor.diff:   * MVC Group parent-child relationships
    * MVC Group lifecycle
   
  -The goal of the Editor application shown here is to be provide basic editing capabilities fo text files. Each
  +The goal of the Editor application shown here is to provide basic editing capabilities for text files. Each
   file will be handled by its own tab; tabs will be located inside a tab container.
   
   . <<_tutorial_2_1,Creating an Editor application>>
  
positive.code: as is its responsibility to display the file's contents. One thing that must happen at some point is the new tab
  being added to the tab container. We can make this happen at the point where an instance of the `editor` MVC group
  is created; this requires the `EditorView` to expose its tab somehow. Or we can keep this behavior local to this
  group and make sure that this View handles adding and removing the tab. This is the reason why we exposed the _tabCount_
  field in `ContainerView`. Let's look at the `EditorView`, shall we?
  
  [source,java,options="nowrap"]
  
negative.code: 
  Notice that the _documentModel_ property is declared as final; this means it will always have the same value, thus we
  can use it to create stable bindings. This is the reason for making `DocumentModel` a subclass of `Document`. As you
  can see the former listens to changes on the latter and copying the values over. This happens every time the application
  changes the value of _documentModel.document_ due to the ``PropertyChangeListener``s that were put into place.
  
  The final remark on this model class is that it implements the `javax.swing.event.ChangeListener` interface. In this
  way the model instance can listen to tab selection changes and update the _documentModel_ property.
  
  Let's move to the View. Open up `ContainerView.java` and paste the following into it
  
  [source,java,options="nowrap"]
  .griffon-app/views/editor/ContainerView.java
  