BIP 21 had broad consensus among the major implementations:
BIP 19 is a document to propose adding a new payment type to the scripting system's template list.
I haven't fully evaluated it completely but it seems solid. My only thoughts is that it uses a bunch of arithmetic operators which can behave in strange ways.