Using new proto objects.
Refactoring IProperty interface to handle the new Proto objects.