Create a new figure for imshow if there is already data

This closes #599.  When calling `imshow`, we create a new figure if the current axes has data on it.  The following code now results in exactly two figures regardless of whether we use the `plt.figure()` calls:

```python
import matplotlib.pyplot as plt
from skimage import io, data

x = data.moon()
y = data.camera()

plt.figure()
io.imshow(x)

plt.figure()
io.imshow(y)

io.show()
```