#129 got everything working but still need to use expression extensions to get rid of string based reflection