resreuctured code to separate transfer from config
added extensive dump functionality for transfers
fixed trigger_irq bug of using the wrong object