Child classes have to be nested classes of the parent doesn't sit right with me. Also, wouldn't it be better if these classes inherited object in some way?
For the record, I liked everything else that it mentioned. Just the inheritance bit was something I didn't like.