Fix handling of special chars in passwords when using /newserver.
Because of the weird string->URI parts->URI conversion we do,
we have to manually decode special entities when converting
them into URI parts. (Otherwise the URI constructor encodes
them a second time)
Stop swimming against the tide and accept what most of the rest of
the world does.
While it adds an annoying depth to the actual source code, it makes
the root directory nicer (no more 'test-res' dirs), means we don't
have to override the gradle config, and makes it nicer to work in
IDEA 2016.1.