introduce self.mapper and get_{initialize,analyze}_arg_tuples as mechanism do differentiate engines
don't use lambdas in {initialize,analyze} so they are suitable for multiprocessing,ipcluster
strip out everything but __init__

MultiprocessingEngine differs from LocalEngine only in its mapper
make do_{initialize,analyze} overrideable member elements
partial conversion to stripped down version that mostly just overrides LocalEngine methods/elements
add helpers for use with functools.partial in IPClusterEngine
bring IPClusterEngine in line with new mapper, do_{initialize,analyze} format
Merge branch 'engine_uniformity' into SHOW_DIAGNOSTICS