Implemented the edge annotations also for self edges.
Corrected several bugs in the previous implementation of edge
annotations.
Fine tuned the representation of different types of shapes for the
annotations (same shapes as arrow heads).