I have been revisiting an old idea I was playing with when I used to do corners first, and checking its feasibility with Roux.
The idea is to solve the final 6 edges in 2 steps.
Step 1
Solve RU and place the LU edge in the LU slot, but flipped.
Step 2
Orient LU and solve the M slice, with 1 of 24 algorithms.
The rationale behind placing LU in the flipped position in Step 1 is to force the orientation pattern of the M edges into one of two patterns: one flipped or 3 flipped. This seems to help a bit with pattern recognition.
If you were to direct solve RU and LU, there would be 28 different algorithms for Step 2. For the cases with 2 adjacent edges flipped, there would be eight 3 edge cycles to learn, which could get confusing, as you would also have eight other 3 edge cycles to learn,
For Step 2, all you need to do is park the odd M edge at UF, identify where it belongs by comparing it to the U and F centers, and identify the edge at DF. The UB and DB edges don't need to be considered, as they can only be in one position (you can't swap 2 edges, and since you know UF and DF, knowing the BU and BD edges give you no additional information). In fact, you don't even need to know what permutation pattern you are looking at (3 cycle, double diagonal swap, double adjacent swap, permuted)-just identify the front 2 edges and execute the right algorithm.
You will have to adjust the M slice in 3/4 cases, but that is trivial.
I looked at my old algorithms when I worked this system out a few years ago, and wasn't sure if the algorithms were any good. I searched them again with cube explorer 5.0 and found much better algorithms.
The first column identifies which edge is at UF. The second column identifies which edge is at DF
UF Oriented, Remaining M Edges Flipped
UF DF M' U M' U M' U M' U (8f*)
UF DB U' M U M' F2 U' M' U F2 (9f*)
UF UB U M' U2 M U M U' M U (9,10)
DF UF U' M U M2 U2 M U M' U (9,11)
DF DB U M' U' M U2 M2 U' M U' (9f*)
DF UB U' M U' M U' M U M U2 (9,10)
DB UF M' U' M U M U M U' (8f*)
DB DF U M' U' M' U' M' U (7f*)
DB UB U M' U M2 U2 M' U M U M' U2 (11,14)
UB UF U M' U' M' U' M' U' M2 U2 (9f*)
UB DF U' M U2 M' U M' U' M' U' (9f*)
UB DB U M' U' M' U' M' U' M U2 (9f*)
UF Flipped, Remaining M Edges Oriented
UF DF M2 U M U2 M' U M' U M' U2 M U (12,15)
UF DB M U' M' U2 M U M U M U2 M' U' (12,14)
UF UB M U M' U M' U2 M U2 M' U M' U (12,14)
DF UF F' L F' M2 F2 M F' L' F (9f*)
DF DB M F L F' M2 F2 M F' L' F' (10f*)
DF UB F' L F' M F2 M2 F' L' F (9f*)
DB UF B2 M' B L' B M' B2 M2 B L B (11f*)
DB DF F' L F' M2 F2 M F' L' F' M F2 (11f*)
DB UB F' L F' M F2 M2 F' L' F' M F2 (11f*)
UB UF M' B L' B M' B2 M2 B L B' (10f*)
UB DF F' L F M2 F2 M' F L' F (9f*)
UB DB F' L F M' F2 M2 F L' F (9f*)
Some of the algorithms in the last set of 12 work best by rotating the cube with x or x', but doesn't require a last x or x', as the cube will be solved at the end of this step.
Looking at all the cases which use L, U, and M turns makes it tempting to mirror both steps ( solve LU, insert RU flipped in Step 1), so that these cases are in the RMU group of moves.
Step 1 should be solved intuitively. There are a few cases which can take up to 7 moves to solve optimally, but some can be solved in 3 moves.
In the event of LU and RU getting solved accidentally during CMLL, just orient the M layer and solve it in 2 steps.
In any case, this gives a true 2 look solve of the last 6 edges.