[ 2014-02-08 Daniel comments and provides wording ]
This issue is basically similar to the kind of solution that had been used to remove the requirement to derive from unary_function and friends as described by N3198 and I'm strongly in favour to follow that spirit here as well. I'd like to add that basically all "newer" iterator types (such as the regex related iterator don't derive from std::iterator either.
Another reason to change the current specification is the fact that it currently says that the member types pointer and reference would be determined to value_type* and value_type& (that is mutable pointers and references), which conflicts with the specification of the return types of the following members:
const directory_entry& operator*() const; const directory_entry* operator->() const;
The proposed fording fixes this by correcting these typedef to corresponding const access.
The very same objections had been expressed by issue 2651 and the below given wording resolves this issue as well.