Repository local storage improvements.

Changes:
* removed way too much java.io.File exists/mkdir/isXXX invocations
* relocated mkdir from core to FS LS (of repo baseDir)
* relocated when mkdir happens (only once, not per every getBaseDir invocation)
* repoBase dir is calculated and created only once, and is cached and reused
* improved/removed code duplication regarding storage contexts

Related:
* https://issues.sonatype.org/browse/NEXUS-6078

CI
https://bamboo.zion.sonatype.com/browse/NX-OSSF35