ディープコピーを行うクラス

割と上出来かも。
ポインタって、object にキャストできないからラッパーが用意されてるんだね。
FieldInfo.GetValue でポインタ型のフィールドの値を取得しようとすると、このラッパーが返される。
このラッパーは内部に汎用ポインタ (とポインタに関連付けられた型) を保持している。
だから、なんも考えずポインタ型のフィールドをディープコピーしようとすると無限ループ突入。