Renamed Property to Properties
Added Property class
Refactored Property; removed instance variables
Added validate_options! as class method
Setting invalid property type raises an error
refactored csv formatters using refinements
Added some comments
Merge branch 'properties' into develop

* properties:
  Added some comments
  refactored csv formatters using refinements
  Setting invalid property type raises an error
  Added validate_options! as class method
  Refactored Property; removed instance variables
  Added Property class
  Renamed Property to Properties