Implemented a Property model and tests