added support of @Serializer annotation for entity that allows users to explicitly specify (custom) Serializer implementation. Otherwise, we'll just simply infer the Serializer type based on field's Java type