Add option for Adaptive Histogram border pixel handling.

As discussed in #757, this changes the way border pixels are handled by `equalize_adapthist`.  The old behavior was to leave the pixels not used by the CLAHE algorithm unchanged.  We now pad the original image to encompass the border pixels for processing, then cropping the image back to its original size.
I think you could reuse `np.pad` here. Something like:
```python
image = np.pad(image, ((0, hgt), (0, wid)), 'reflect')
```
I'm not crazy about some of the naming here. For example, `hgt` and `wid` could be renamed to `h_pad`, `w_pad`.