Simplify the ValueEval.toString() implementations and include more information on unexpected types of ValueEval