improve default values for nullable ref in quick fix

Currently , for quick fix *create value*, when a ref is nullables, the default value is always `null`

With this pull request non-nullable and nullable values are on a par.
For instance the default value for `Boolean?` is `false`, instead of `null`

However, if a default value can not be computed, if the value is optional, `null` is still used instead of `nothing`.
For instance, the default value of `Integer|String?` is `null` (the default value of `Integer|String` is still `nothing`)