Make FindPropInfoByName protected in TCustomAureliusDataset

You splitted AddFieldDefsFromClass into several functions, that's fine.

Now I recognized, that FindPropInfoByName will force AureliusDataset writing and reading using properties.

We are using your changes on AddFieldDefsFromClass, so that we are looping Fields using Explorer.GetColumns, providing their Optimizations.

I think, it could also be solved in your Dataset, if you extend TFieldInclusion.
TFieldInclusion.Columns, TFieldInclusion.ClassVisibleMembers, so the user could choose, if Fields (beeing exact, I have to say FieldDefs...) should be generated loopung Columns or ClassVisibleMembers looping.

Because there are some cases, you do not wan't to execute Getter and Setter-Methods, but there are also cases, you want to...

I think this would gave us maximum flexibility.

But in first step it would help a lot, if FindPropInfoByName would be protected and virtual, so that it is overwriteable.