Switch to using BytesIO in the thumbnail filter library
Allow running without PIL, albeit badly

PIL is not available for Py3 yet.
Start fixing up the exception syntax