ENH: adding a new markups module, work in progress

TODO: sort out the placing toolbar, the GUI, displayable mananagers.
STYLE: hide debugging print outs
BUG: hook up events so that the GUI updates when a list is added, markups are added to the list, and positions of markups change
ENH: hook up the table to the node so that changes propagate.

Check to make sure that there are changes before setting the table or the
node so that don't trigger more settings.
ENH: splitting the displayable managers into 2d and 3d.
BUG: set the default new markup to a fiducial and set the default name
ENH: add and use a flag to name new markups using the list name as a prefix
ENH: add a check box to expose using the list name as a markup prefix.

Use the 1 based number of the markup in the list as the suffix
ENH: scroll to the row containing the new markup when it's added
ENH: add methods to jump to slice location

Provide a method to jump to the first point in the nth markup in a list.
Uses the new method to jump the slices to a xyz location.
ENH: on click in the name column, jump slices to that point location

Use the logic methods to jump the slices after extracting
the location from the item clicked on.
For now, clicking in the name column triggers the jump slices.
Set selection mode to row and allow multi select for future
mass operations.

TODO: make a new column to click in for jump or implement righ click
on the row.
STYLE: comment out debugging comments
ENH: don't respond to the seed widget unless it's moving

BUG: not using the check in 2d as it disables the widgets somehow
ENH: first pass at adding in better support for light box mode
Merge branch 'Markups' of github.com:naucoin/Slicer into Markups
ENH: unify the mouse mode tool bar to work for annots and markups

Remove the markups mouse mode tool bar, update the regular one
to work with the updated selection node.
Update the displayable managers to work with the updated selection node.

Selection node changes:
Rename the selection node annotation variables to place node.
Renamed the active annotation id to active place node class name to
match what it was actually holding.
Use the active place node id for just the markups since the annotation
logic keeps track of the active hierarchy.
Add an icon name string so that the tool bar doesn't have to derive
it from the class name.
COMP: remove Markups tool bar from application
ENH: enable saving/loading of markups through data widgets

Added the IO class and register it so that the data widget
can handle markup nodes. Load the file via the logic class
and storage node.
Create a display node when reading in a markup from file.
STYLE: clean up debugging print outs.
ENH: mark node modified since read when changes are made.

Call Modified() when invoking specific events so that the node's
MTime is updated. Check the node's MTime against the stored time
in GetModifiedSinceRead.
TBD: decide if Modified by itself is enough or if keeping the
fine grained events speeds things up.