Fixed enum ContentTypeWriter crash.
ReflectiveWriter is now a template type to fix type writer mapping issue.
We should not have any collisions between type writers anymore.