Fix constant preptime value

More types backlog.

Remove the shadowing ConstantExpression.preptimeValue field. Fix the problem described in the TODO comment, which was that overload resolution could replace the constant with just the type.

Also correct assumptions about when the preptime value of a constant can be null. Which is never; all constructing paths set it.