Object validation framework. WIP