This patch adds a new function to lldbtest: expect_expr. This function is supposed to replace the current approach
of calling expect/runCmd with expr, p etc.
expect_expr allows evaluating expressions and matching their value/summary/type/error message without
having to do any string matching that might allow unintended passes (e.g., self.expect("expr 3+4", substrs=["7"])
can unexpectedly pass for results like (Class7) $0 = 7, (int) $7 = 22, (int) $0 = 77 and so on).
This only uses the function in a few places to test and demonstrate it. I'll migrate the tests in follow up commits.
maybe something like self.expect(got, substrs=expected, exe=False) ?