総称型の型引数を追加(コンパイラの警告対策)
EditPart で、Model が簡単に取り出せるようにジェネリックを導入。
EditPart サブクラスで、Entity系と記号(サブセットの区分とか)を分けた。

　Entity系のみで使用するメソッドをスーパーセットに集約するため、EditPart
の継承の階層を増やした。
　Entity系でないものまで、AbstractEntityEditPart
からの継承をしていたので名称は変更した。
各エンティティごとの配色の取得をメソッドに切り出した。
AbstractEntityModel が必要なメソッドを AbstractEntityModelEditPart へ

キャスト削減のため。
AbstractModelEditPart の型引数を ConnectableElement へ。
(AbstractModelEditPart 以下で使用するモデルで ModelElement が必要になる
ケースはないので)
EditPartFactory の instanceof と if の連続を解消する。

Visitorパターンを導入してみた。
IPropertySource を取得するロジックを、各EditPart に分散した。

TMDEditorPropertySourceProvider で instanceof と if の連鎖で
IPropertySource を取得していたが、これはキャストが多くコードが読み
にくい。

このため、PropertySource を出すEditPart だけに IPropertyAvailable
(今回のために新設) を実装する方式とした。
アウトラインのEditPartの生成にもVisitorパターンを適用。
EditPart は、生成時にモデルをセットできるようにする。

　何かのひょうしに setModel を忘れるということがないようにするため。

現状、Modelがnullの状態のEditPartというものが想定しづらく、EditPart
とModelは、一対一の関係にあるためコンストラクタ引数で設定した方が分
かりやすい。
モデル編集用ダイアログからスーパークラスを抽出。

EditPartで、編集時のロジックを共通化できそうなため、まず Dialog の
スーパークラスを作成する。
表をダブルクリックしたときの挙動をメソッドとして抽出した。
updateFigure のコードの形式がなるべく揃うように整理。
ライセンス、author の追加。 [ci skip]