qt: Reduce cs_main locking in GUI thread

- Do wallet transaction preprocessing on signal handler side (where the lock is still held); avoids locking cs_main/cs_wallet on notification in GUI thread (except for new transactions, for now)

- Move transaction new/update notification to TransactionTableModel. This moves the concerns to where they're actually handled. No need to bounce this through wallet model.

(improves #5037)