made internal visible to test project
changed PropertyData class to internal
refactored classes