so sure in a local thread's execution you run various callback handlers and what not, but internally in the ordinary flow of carrying out the peer 2 peer networking communication, validating transactions, operating the database and its indexes, aren'd you juggling / passing jobs between threads?