/// Creates an instruction matcher from an XCM. Since XCM versions differ, we need to make a trait
/// The intended usage of the matcher API is to enable the ability to chain successive methods of
/// Iterate instructions forward until `cond` returns false. When there are no more instructions