Replace Tight looped Reflection for Linq

... Reflection is slower than Linq and is hundreds of times slower when you cache the Linq compiled code.

Since we tight loop over the constructor for each field we read, that is a HUGE amount of time spent in the reflection library.