Will the new version of armory still support the BIP10 format for signing transactions offline, or is that going to be totally removed?
Also, with this new format, why use binary? Why not have a JSON-formatted object of some kind thats produced (even if it's then encoded to base64 as a final step). A format like that could be much more easily read and verified via a standard JSON schema (http://json-schema.org/), instead of custom byte-packing code. That will make it especially easier for external tool creators/integrators like us to support this new format, especially, and make it easier for developers in general to debug issues surrounding it.
I think another one of the issues we see with this new format is that adding any support for it (at least at this time) involves delving into the guts of numerous armory objects which have their own esoteric methods and functioning. It just feels that could be changing a lot between now and the beta release, given how tightly coupled to the implementation it appears to be, at first glance. (If that's not the case at all and the format is pretty well stabilized, that would be great though.)
Unfortunately, we removed BIP 10 because it was not used by anyone else, and the new format completely encapsulated everything we needed for both regular offline and multisig. Hence, if you upgrade your online computer to 0.92+ you'll have to do the same for the offline computer. It's the first time in 2-3 years that we've broken compatibility with older offline systems, but we felt we didn't have a choice. Everything is far simpler for us this way.
As for the binary formats: most of what's moving between systems is binary data. And all systems have the standard set of get/put VAR_INT, VAR_STR, etc, the same as serializing and unserializing other Bitcoin objects. We had pondered protobuf, but we ran into some issues getting it working cross-platform. Maybe in the future we will.
As I mentioned above: we've done 5-way simulfunding and 7-of-7 lockbox spends with the new format, and have no issues. Our barrier to release is stabilizin the GUI -- we see no reason we will have to further modify those formats. Also, a lot of things in that new format are forward-thinking, like space for payment protocol or other web-of-trust mechanisms (authMethod & authData), and wallet-defined strings to help lite-wallets find their own addresses (wltLocators). Those can be left blank right now (as Armory does). The rest of it is just raw scripts, raw public keys, raw transactions, some metadata & labels, etc. The only thing that might be unusual is the way we compute lockbox IDs, but it's not complex.
I do admit it may have to be updated in the future -- usually something this complex you can't get everything right the first time. But at least for now, this works for 100% of Armory's simulfunding and lockbox activities, securely works with offlien devices, and even has a bit of foresight built-in to handle lite wallets and authentication of addresses. I expect this will be sufficient for a very long time, maybe even until the community determines how they want to standardize this, and then we'll upgrade (as well everyone else)