Add animated gif support to TexturePacker 

This allows animated gifs to be included for texture packing, automatically indexed for loading into an Animation. In my workflow I found it cumbersome to produce many png files for an animation, many of which were repeated to get the pauses necessary in certain animations. But apps like GIMP and Cosmigo Pro Motion can very easily produce animated gifs with variable length time delays, and the single file helps keep a version control directory from getting cluttered.

To allow for varied time delays per frame, a float version of a GCD is calculated, and frames of animation are repeated (aliased) to get timings that match the original gif. The GCD delay is output to console, and is the value that when used in the Animation constructor, will result in an Animation with timings that match the original gif. The float GCD algorithm requires some maximum allowable time error, so I added a setting for `maxAnimationDelayError`. This is the permissible variation in delay (in seconds) for each frame. Usually, the result will be significantly more accurate than the error. If the error setting is set to 0, then this step is skipped and no frames are repeated.

Maybe down the road we could consider expanding the pack format to provide animation delay information, but that would also require a new Animation type that supports variable delay. But I think in most cases, it would be more performant to use Animation as is with extra frames in its array of TextureRegions, so I think this GCD delay is a good solution. Gifs can be intentionally generated with a certain GCD in mind to minimize the number of frames that are generated.

I had to do a bit of a refactor for empty images to allow animations with empty frames. I figure that empty frames in an animation are not a mistake, and must be kept as timing placeholders, so for gifs only, the `ignoreBlankImages` setting is ignored. Also, the `useIndices` setting is ignored for gifs, since there can be no animation without indices.
I started off doing a simple GCD calculation on the array just like BigInteger does, as can now be seen in lines 52-57. I basically divide by the max allowable error (so that a whole number is equivalent to the error), round to integers to perform GCD, and then divide out the max error again.

However, I found some wacky combinations of floats that get inefficient solutions with this method (more duplicate frames than necessary to meet the max error requirement). That's the reason for everything below line 57. For example, with an error of 1/60,  `{0.166405f, .404062f, .541899f, .1493f}` results in 0.016666668 with the simple method, but with 0.03025744 using the Stern-Brocot method, which means about half as big an array in the resulting Animation. Since this is pre-processing files, I figured some extra calculation is worth saving a tiny bit of memory in the game. 

But it could be overkill, because in most cases, you would have some GCD in mind when creating a gif. Or maybe my simple algorithm at line 57 could be improved to get the better solution anyway. I kind of hit a wall on trying to improve that, though.