rework Expr definition again. make further progress on eval. Doesnt compile yet
add incomplete code for read