Restart from offset 0 after emptying the buffer
Discard single-use method abc::_scope_trace_impl::get_trace_contents()
Use abc::_raw_vextr_impl_base::validate_index() for abc::mstr_::operator[]() too

This bound checking must have been missed when code switched to using
validate_index().
Add ABC_TESTING_EXPECT_EXCEPTION() and ABC_TESTING_EXPECT_NO_EXCEPTIONS()
Add more test cases to str_basic