Iterative kernel background estimator

Made a new PR as couldn't push to the old one: #173

Still in progress. To do:
 - [x] Add unit tests
 - [x] Finish tutorial
 - [x] Include initial image and mask image additionally in the tutorial
 - [x] Clean up code formatting
 - [x] Add docstrings
(Anything else?)

Please comment if you see anything to be done or changed.
The user shouldn't have to remember to do `astype(float)` here ... if this is needed it should be done by the `IterativeKernelBackgroundEstimator`.