Fix MacOS X build when using Apple LLVM compiler (Clang).

The order of defining the nested classes inside FarPatchTables confused
this rather strict compiler. Simply move the
FarPatchTables::Descriptor::iterator code a little later in the file to
remove the confusion.