feat(input): evaluate exprs for  ngTrueValue/ngFalseValue

If ngTrueValue / ngFalseValue are strings, they are evaluated as expressions.
If the resulting value is undefined, and not the "undefined" constant, then it is
treated as a string literal. Otherwise, the evaluated value is used.

If no string expression is provided, then the default value remains true or false.