Add an additional mode for maven repositories so that they can be stored
per-workspace, but outside of $WORKSPACE.

Using this option, if the Workspace is $WORKSPACE, then the repository
is $WORKSPACE.repository (rather than $WORKSPACE/.repository).

The rationale for this is that builds often want a 'clean' workspace
before build - for example, the git SCM will do a 'clean after checkout'
with git clean -fdx. (See JENKINS-17763)

This blows away any Maven repository that you have, forcing re-download
of every artifact (even if you are using the M2 repo cleaner to selectively
delete snapshots).

The only other alternative would be to make the SCMs have a cleaning
'whitelist', which seems more "magic" and would have to be implemented in
each one.

Signed-off-by: Nigel Magnay <nigel.magnay@gmail.com>