account for in-process workers in the logweasel plugin

if the application sets `Delayed::Worker.delay_jobs` to `false` then jobs
are invoked in the same process where they are enqueued. in this scenario
the enqueue callback is never invoked. but that's okay because if we're
in-process we probably already have a logweasel transaction.
fixes for out-of-process mode
make tests cope with after invoke_job hook that destroys the lw tx
Merge pull request #3 from newcolabs/dj

get logweasel+dj working finally