Removing OpenStruct in favor of PORO
Created by: jeremyf
Ruby's OpenStruct class defines accessor methods dynamically when created. This means that the method caches are cleared every time an OpenStruct is instantiated.
https://github.com/charliesome/charlie.bz/blob/master/posts/things-that-clear-rubys-method-cache.md
Based on the usage and documentation of ActiveTriples, the Property class exposes 4 configuration options:
- name
- cast
- class_name
- predicate
Closes #177 (closed)