"@json" macro annotation for case classes
This macro annotation automatically creates a JSON serializer for the annotated case class.
The companion object will be automatically created if it does not already exist.
"@jsonDefaults" macro annotation for case classes
Same as "@json" annotation, except that it uses Json.using[Json.WithDefaultValues] to allow default values
to be used for non-optional fields if they are not present during Reads[T].
Context has been deprecated in Scala 2.11, blackbox.Context is used instead