OpPixelFeaturesPresmoothed: Eliminated 'stacker' and 'multi' suboberators, which weren't needed and caused lots of extra configuration steps.
slot: Removed preinsertion signal. (Nothing seems to use it.)
Use MetaDict.assignFrom() whenever possible.
caches: Provide blockshape/RAM information as slot metadata
OpPixelFeaturesPresmoothed: Provide RAM and blockshape hints as metadata.
OpPixelOperator: Fixed typo in function name.
RoiRequestBatch: Catch StopIteration exception if the total number of requests is smaller than the batch size.
roi.py: Added utility function: determine_optimal_request_blockshape()
ThreadPool: Added num_workers member for clients to see.
Metadata: ram_usage_per_requested_pixel now assumes a 'pixel' includes ALL channels.
OpH5WriterBigDataset:
- Request blockshape is chosen using blocking hint metadata
- execute() is now a simple wrapper around a RoiRequestBatch helper.
- TODO: The code that chooses the request blockshape should be pushed into a shared utility.
BigRequestStreamer:
- Now chooses blockshape if you don't provide one.
- Now two choices for blocking scheme: 'relative' (the old behavior) and 'absolute'
roi.py: Fixed a docstring test.
caches: fixed a problem with ram usage calculation when dtype == object
OpH5WriterBigDataset: Use a BigRequestStreamer to execute the export. Also, use determineBlockShape() to compute the chunkshape.
Merge branch 'master' of ssh://github.com/ilastik/lazyflow
Merge branch 'blockshape-meta'

Conflicts:
	lazyflow/operators/ioOperators/ioOperators.py
	lazyflow/request/threadPool.py
	tests/testOpH5WriterBigDataset.py