Better naming refactor: getting rid of "simple", instead creating a trait dedicated to supporting json generation in non-nested fields. Also renaming "primitive" field to "basic", as it also covers String, which is not primitive.