invoicing: Copy lines by portal type, not by simulation relationship.

Simulation relationship fails in (at least) two cases:
- cancelling an invoice which was entirely created by simulation would
  create an empty invoice
- cancelling an invoice with simulated accounting lines generated from
  temp-object-based simulation would copy those lines, while they should
  not be copied
Also, implement recursive copy of Invoice Lines, as (per portal type
definition) they can be arbitrarily nested.
Also, prepare a place-holder for Invoice Cell copy. As I do not have a
document with cells at hand, and do not know all relevant properties, I
decided to keep this code disabled and raise.
invoicing: Only set original invoice as causality.