reflection: refactored public properties support [closes #49]