So you'd have to implement binfmt_misc for the new binary format? Will you need to write your own ld.so?
Yes and yes