Base class for FuzzyOverlap misc tool

Some details are still to be fixed
Working version
Added inputs&outputs descriptions

PR #622
enh: first pass at generating an open provenance model output from nipype execution graphs.
enh: added more opmx components
enh: write a graphml like document
enh: added versioning changes interfaces
enh: result property will load result file if available.
enh: updated opmx output from nipype.

* better artifact handling
* better capture of runtime info
added version info to freesurfer interfaces
rf: added provenance generation to interface
fix: don't remove provenance file
BRK: adding current provenance standard
enh: added pyprov to external and rewrote provenance generation using pyprov
fix: added merged stdout+stderr back into provenance output
fix: cleaned up provenance output to create runtime bundle
fix: cleaned up workflow provenance generation.
enh: added package check and changed to nipype logging
enh: replace ids by labels in dot generation
enh: replaced ids by uuids