Only decode one frame at a time in GifFrameManager

Progress toward #212.
Synchronize gif decoder getNextFrame.

This does not make GifDecoder thread safe in that
it doesn't guarantee that a decoder will decode
a particular frame, but should keep state
consistent and prevent crashes from concurrent
writes to buffers.

Fixes #212.
Add verbose timing logging to DecodeJob.