3.5.0 Revision of annotation system

Much more robust, with better encapsulation. Annotation tool is far
simpler,  and an annotation editing tool should be possible now