Add buildExpr macro, close #225

Why not just make this ``macro buildExpr(arg)`` and remove the error checking?