NEXUS-5753: MDC fixes

MDC in Nx logs worked a bit chaotic on non-QTP threads
(where filter handles as should), but spawned threads
from pools got MDC inherited from it's creator and then
reported stale users or none at all.

This change should now properly implement following changes:
* async event inspectors will also log on whose behalf they act
* repo/group pools reports same
Using concrete types for temp vars
NEXUS-5753: UserId detection added
NEXUS-5753: Skimmed down the MDC filter
Added null checks

As the ctx might be null, and
setting null should not happen
NEXUS-5753: Skimmed more the filter.
NEXUS-5753: Always have userId set in MDC
Merge remote-tracking branch 'origin/master' into nexus-5753-mdc-cleanup
NEXUS-5753: Proper use of MDC

And it now shows not only "run now" userId when a
scheduled task is ran, but also submitted jobs
like staging repo drop, creation, etc will carry
proper MDC too.
Merge pull request #48 from sonatype/nexus-5753-mdc-cleanup

NEXUS-5753: MDC cleanup