Nodeクラスのコンストラクタ仕様を変更
不要なnullチェックを削除
ノード追加時に追加したノードの親を追加されたノードに変更する処理を追加
Nodeクラスにstaticファクトリメソッドを追加
適切な命名に変更

NodeAppendable -> ChildAppendable
addNode -> addChild
デフォルトメソッドの実装を利用
cloneでNode<T>へキャスト
Nodeクラスのequalsの仕様を変更