Improve SLIC
Reduce memory footprint
Remove unnecessary parameters and update doc string
Remove legacy comment
Fix dtype bug
Fix bug in window extent determination
Reorder variable declarations
Improve documentation of sigma
Revert multichannel magic and improve parameter docs
Use absolute imports
Add missing rgb2lab import
Make image C-contiguous
Rename clusters to segments
Add optional description to parameters
Fix indentation
Change default value of sigma
Revert default value of maximum iterations
Fix image dimension sanitizing at function start

`np.atleast_3d` will add a singleton dimension at the end of an array
if needed. This is not the correct thing to do if `multichannel=False`
based on the subsequent lines. If the input image was 2D with shape
`(40, 50)` and `multichannel=False`, then `np.atleast_3d` gives it
shape `(40, 50, 1)`, and then, because `multichannel=False`, the rest
of the code gives it shape `(40, 50, 1, 1)`. This results in the final
returned array having shape `(40, 50, 1)` instead of the desired
`(40, 50)`.

This commit fixes that and updates the test to detect this failure.
Merge pull request #5 from jni/slic-speed-fix-dims

Fix image dimension sanitizing at function start
Raise warning for sigma parameter and add to TODO for next release