Added realname output to index-cmd.py for the -p option.

When inspecting index contents, the real FS-path of each entry is
printed in the same style as bup-save.
Removed unused erealname support from index entries.

erealname is non-sensical on index entries - it has been replaced by
using e.realname where appropriate. Index entries should not be
attempted to calculate their real name, since we always supply it whole
and it may be completely different to what they expect.
Add NameCollisionError exception to _golevel() in index.py

Added support for index.py to detect naming collisions on objects
(previously this was assumed to be enforced by the filesystem). 

This is implemented with the NameCollisionError exception, to let
calling code make an intelligent decision about how to best rename a
colliding object.
Buildable support for grafted paths - but it's broken.

For whatever reason it runs, but it doesn't work. It needs proper
analysis, but I'm out of time at the moment. We'll pick it up later.