doors,pnfsmanager,chimera: Add checks for root directory

The root directory does not have a parent, yet much of our
code does not check for this special case.

This patch adds such checks to various pieces of code. Some of
the checks may be redundant, but I prefer that each major module
validates its input rather than assuming it is only ever used
in specific circumstances.

A few checks have been removed. This is because the permission
handler has been extended such that it can now reason about
the root directory too.

Target: trunk
Request: 2.5
Request: 2.2 (patch will be attached to merge request)
Request: 1.9.12 (patch will be attached to merge request)
Require-notes: yes
Require-book: no
Ticket: http://rt.dcache.org/Ticket/Display.html?id=7185
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: http://rb.dcache.org/r/5155/

Signed-off-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
[fix] Add serialVersionUID field to legacy principals

After migrating to JGlobus 2, we added the old principals from
JGlobus 1 to ensure compatibility with older pools. For reasons
unknown to me, the serial version UID of the SimplePrincipal
class did not match the UID of the class shipped with JGlobus 1.
This prevent dCache 2.5/2.6 from working with dCache pool 2.2,
2.3 and 2.4.

This patch adds the version UID. Unfortunately this means that
dCache 2.5.2 will not be compatible with dCache 2.5.0 and
dCache 2.5.1. Given that we don't have any production installations
of dCache 2.5 yet, I consider compatibility with pre-2.5 releases
more important.

Target: trunk
Request: 2.5
Require-book: no
Require-notes: yes
Acked-by: Paul Millar <paul.millar@desy.de>

Signed-off-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>