Add support for custom property types .
Addresses #305
Merge pull request #322 from dresende/custom-property-types

Add support for custom property types.