Enable metaprogramming over CAN receive interrupts.
Enable metaprogramming over CAN TX mailbox empty flags.

This eliminates the last use of the (!!) list index operator from the
bxCAN driver, which could have allowed the various definitions to get
out of sync otherwise.
Refactor bxCAN transmit-path buffer copying.

This doesn't change the generated code in any significant way. It just
ensures that code generation can't blow up or produce wrong answers in a
couple of silly ways.