>602,603
自分なりの解釈に基いて書いているので、コレという「ソース」はありません。
逆にこちらが間違っていると断言できるソースがあるなら示して下さい。

>606,607
「privateであっても」の部分が引っかかるというなら、
まずその部分は取っ払って考えて下さい。
(例えば>541のopen/write/closeは「Data」の操作と言えますか?)

オブジェクト指向的に相応しくないメンバであるなら、
privateであっても極力排除した方が良いと思いますが。
privateなら良しとするべき理由があるならともかく。