NEXUS-6091: RequestContext cleanup

Before RequestContext was introduced (around 1.0.x of Nexus)
it was a plain Map<String, Object>. This change makes req ctx
not a map anymore, and contains handful changes across whole Nx
to fix it's misuses as map.

Also, a UT introduced that verifies how context is properly
passed on as expected.

Issue
https://issues.sonatype.org/browse/NEXUS-6091