BUG: fixing fiducial projections

Turning them on for the first time was causing a null pointer crash in the
VTK 6 rendering pipeline. The glyph source hadn't been updated and the points
were undefined in the default circle glyph.

Also call the displayable manager superclass on scene close to ensure that the
fiducial projections are removed from the render window.

Issue #3821

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23668 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Consistently invoke MarkupAddedEvent specifying the markup index.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23669 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Ensure RemoveAllMarkups also invoke MarkupRemovedEvent

This commit improve the API consistency by ensuring the event will
be sent also if RemoveAllMarkups is called.

Similarly, the function "SetLocked" is called instead of directly
setting the ivar, doing so will ensure that the LockModifiedEvent
is also invoked.

Note that the pair StartModify/EndModify is used to ensure the ModifedEvent
associated with the markups node is invoked at the end if it applies.

For sake of consistency, the function RemoveAllTexts() has been added.
Since no text is added/removed when function Add/RemoveMarkup are called,
it doesn't make sense to clear the text when removing markups.