Completely refactored. Got rid of reflection (aka ObjectSerializer)