Add ChainedDynamicProperty to provide property chaining functionality, where the head property determines the current value and the next property on the chain serves as the default if the head property does not have an acceptable value.
Merge pull request #59 from allenxwang/master

Add ChainedDynamicProperty to provide property chaining functionality, where the head property determines the current value and the next property on the chain serves as the default if the head property does not have an acceptable value.