Introduce application object evaluation.

Create a structure to have base class and various derived classes to perform the application object evaluation per application object type.