After much fruitful discussion and evolution, this proposal is now a series of "Bitcoin Improvement Proposals" -- see BIP 11, 12 and 13: https://en.bitcoin.it/wiki/Bitcoin_Improvement_Proposals
Sincere thanks to everybody who contributed improvements, ideas and code.
To answer the problem of unwieldy listing of all possible combinations for m-of-n under the current proposal, consider using a modified form of the current proposal that would handle a disjunctive list of m-of-n cases. (m1-of-n1) OR (m2-of-n2) OR (m3-of-n3)