Require the Executable of a Task to be Callable, not a Function

This makes the check symmetric with the one done at
PyMW_Master.submit_task, which allows for a broader set of things to be
passed as executables to a task (e.g. callable objects).
Store Both the exec and exec_name Variables in a Task

In MIMD or MISD configurations, a task can be described by what it is
doing over what data. In PyMW, that means a task can be described in
terms of it _executable and _input_data attributes, except for the fact
that _executable is an already mangled string based on the name of the
executed piece of code.

By storing both the executable and executable name one can use the
former attribute for user-facing features and the latter for
interface-facing functionality.
Making input_data and executable Public
Merge pull request #4 from dMaggot/master

Support for the Use Case of Determining What was a Task Doing on What Data (MIMD)