moved property class into its own package