ENH : improved available_handler_list and all_subclasses

 - add the base handler to returned list if it is not abstract
 - don't include abstract sub-classes
API : corrected spelling in function name

FileHandler.handler_extenstions -> FileHandler.handler_extensions
ENH : Added OpaqueFile and OpaqueFigure handlers

sub-class of FileHandler that has no brains and only can return the
path to the backing file.

This is useful as it provides the advantage over a string input in that
 - it indicates that the string is really a file path and a label
 - allows the UI builders to use the same file-selection widgets
   used for the other FileHandlers.

OpaqueFigure provides a non-exhaustive list of file extensions sensible for saving
matplotlib figures.
ENH : added ImageSource handler

Draft of ABC for sourcing images.  It is assumed that most images we
will be interested in working in will actually be sequences.  Design
closely follows pims.
API : add make_source to BaseSink

Currently optionally defined function on sub-classes.

The idea is that for pipe-lining data it would be good to be able to
easily create a BaseSorce object from a BaseSink object that results
were just dumped into to use for the next stage.
ENH : added distribution plotting example tool
ENH : moved activate/deactivate logic to BaseDataHandler

 - management of the active state is now handled by the base class
 - provide two decorators to make checking the state of active/inactive
   easy

 - still need to over-haul existing classes
TST : added some simple tests for the BaseDataHandler class
TST : added pickling fail test

 - test that exception get raised when trying to pickle active handler
RFCT : reworked csv handler due to changes in BaseDataHandler
TST : added tests for csv handlers