Replaced custom constructor delegates with the use of reflection

Hopefully developers will find this to be a simpler, cleaner approach.