I hear that. But I don't see why mainstream wallets and wallets
designed for crypto research should not share a common core.

I think there was some misunderstanding. I was saying they could and should share common cores, so we are in agreement without realising it :) I also didn't mean to imply there was anything special about bitcoinj, just that it's an example of a wallet engine that's already in use.
 
BIP70 is interesting, indeed, although I still fail to understand why
(according to the specs I saw) the PaymentRequest message is signed,
but not the Payment message.

Because it's intended to be submitted via HTTPS. But what would you sign the message with? Some arbitrary key bound to the transaction?