Makes MplPlot return a function that plots

This makes the actual code run when MplFigure executes. It breaks
additional output ports that plots might have.

Ticket: 396
Removes output ports from plot modules

This only concerns MplContour and MplContourf right now. We should
probably get these somehow, but since they'll only be computed when the
MplFigure module runs...
Saves module input in closure

We know get the module inputs at compute time and let the plot_figure()
get them from the closure. This allows the plots to use the correct
arguments even if the module get reused because of automatic looping.
Sets MplFigure's addPlot port to depth=1
Do not wrap Variant when passed to List

core/modules/vistrails_module.py:
  - set_iterated_ports: Allow Variant->List
  - get_input_list: Allow Variant->List

core/vistrail/pipeline.py:
  - mark_list_depth: Allow Variant->List

Ticket: 871
Allow List to connect to anything

Becaues it is now a Variant of depth 1

core/modules/module_registry.py:
  - are_specs_matched: Accept anything connected to a List
Fixed running Table in an implicit loop

packages/tabledata/common.py:
  - Table.set_output:
    Check for self.list_depth because this should only
    be done on actual execution.
Merge branch 'matplotlib-pass-functions' into 'automatic-loops-changes'
Makes List's head port depth=1
Merge commit '093508df037c0a6e3c7aebb88cb8e574e5fc637c'

Conflicts:
	vistrails/core/modules/vistrails_module.py
	vistrails/core/vistrail/pipeline.py
Merge branch 'automatic-loops-changes' into 'master'

Conflicts:
	vistrails/packages/matplotlib/bases.py
Views should always check if controller has changed

Right now we do not have an explicit state to tell which
is the current view so we send controller_changed signals even
when it has not changed. All views need to ignore this signal if
the controller has not changed, but they did not.

This greatly increased time to switch views.

Fixed in:
gui/collection/vis_log.py
gui/module_configuration.py
gui/module_info.py
gui/paramexplore/param_view.py
gui/paramexplore/pe_inspector.py
gui/version_prop.py