Takes either a function or a relative length, just like with `lr`,
`stretch`, and `accent` which was changed in the previous two commits.
The short fall was changed in the first commit, so no test updates here.
The default is now much clearer to the user: `x => x * 1.1 - 0.1em`.
Previously there was always a short fall when scaling delimiters, even if
the user requested a specific size. This is no longer the case; the short
fall is only present in the default for `lr` (`x => x - 0.1em`), and is
the reason for the updated tests - the size of the delimiters is now
actually what was specified in the size argument. This also makes the
default for `lr` much clearer to the user.
A slight hack was used by exploiting the `name` property in the `func`
attribute macro so that the default value in the docs for `lr.size` would
clearly show what the default function was (instead of just its name
`default_lr_size` which is meaningless and inaccessible to the user).