Allowing tests to run without PIL

Right now, the tests blow up if PIL (Pillow) is not installed. Since PIL is not in `requirements.txt`, this will be a common and unfortunate occurrence.

Of course, it's good that PIL is not in `requirements.txt` since it's only required for tests. But we should do what Django does: detect whether PIL is installed, and if not, skip the tests (and other code) that require it. This implementation is based on Django's version.

To test this, I suppose you could add a build configuration without PIL.

Also, I noticed that the test in question - `FillingImageFileField` - wasn't being run because it wasn't listed in `__all__`. Assuming that was a mistake, I added it in.