renaming and tiny refactoring
added support for ExpressionToProperty assignment
introduced Config to provide customized reflection logic
ExpressionTransformer rewritten with standard expression visitor