Fixed bug issue 187
Code style
Apply quality option only to JPEG images

The quality option is specific to JPEG and should not be applied to other formats. For instance, it could lead to wrong PNG compression level.

Also fixed a possible error (imagepng() arguments shifted) in GD with PNG if filter specified but not quality.
Add "png_compression" option

Takes an integer from 0 to 9.
Fix PNG compression option in Imagick/Gmagick

I didn't use the "png:compression-level" define, as it's not implemented in Gmagick nor in old Imagick versions.
Update PNG compression settings in some unit tests

Instead of replacing with "png_compression => 0", just remove these options to improve code readability.
Remove preliminary test to improve code readability
Rename PNG compression options, add changelog entries

* Upcoming "png_compression" renamed to "png_compression_level"
* Existing "filters" renamed to "png_compression_filter"
Implement png_compression_filter option in Imagick/Gmagick drivers
Validate png_compression_filter option
Added ext-mbstring and ext-exif to suggested / require-dev in Composer as these are not technically 100% standard.
Animation delay is now null by default, which means to keep the original timing.

Imagine/Layers now also replaces the Imagick resource in its loop, as this is actually required for any changes to frames to propagate.
Added a simple test, with an image that couldn't be resized properly before.
Small documentation update
Removed default sigma value in EffectsInterface (should not have been committed)
Amended suggestion description for ext-exif, removed exif as dependency for dev and removed mbstring entirely.
testSaveWithoutFormatShouldSaveInOriginalFormat will now be skipped if ext-exif isn't installed.
Apply an animation delay of 0 (which is perfectly valid) properly
Animated GIF resize test is now a global test (Gmagick results pending!)
Dumbass skip message.