cellPngDec: Ignore bytesPerLine < width * bpp.

It seems strange, but Sonic CD passes bytesPerLine = w * 3 for a 4 channel
image.  Either this is a bug elsewhere, or it ignores likely incorrect
strides.

Untested except in Sonic CD.
GL: Swap R/B in A1R5G5B5 correctly.

Fixes Terraria, thanks @raven02.  How did I miss this, it was not passing
the test after all...
GL: Fix D1R5G5B5 texture R/B components as well.
Fix wrong color effect in Disgaea 3
Merge pull request #242 from unknownbrackets/pngdec

cellPngDec: Ignore bytesPerLine < width * bpp
Merge pull request #243 from unknownbrackets/texformats

Swap R/B in a few other texture formats
Merge pull request #244 from raven02/patch-6

Fix wrong color effect in Disgaea 3
Check pointers in cellPamf
int ->size_t
Merge pull request #246 from Blaypeg/master

Explicit conversion to avoid compiler warning (2)
GL: Fix half-float texture formats.

This matches the ps3 output/channels for these textures per the
rsx/texture_formats test.
GL: Fix X16 / Y16_X16 texture formats.

Per the rsx/texture_formats test.  Not sure about pitch, may need to deal
with UNPACK_ROW_LENGTH...
GL: Fix the compressed R8B8 / B8R8 type formats.

The not-swizzled bit is always set for them.
Merge pull request #247 from unknownbrackets/texformats

Implement more texture formats per the test
initial start to eliminate static func init, not compilable atm
move module initialization into a module manager, still has some issues like stopping not working and debug crashing
add #idef 0 to modules that aren't in the windows project
don't double initialize and don't de-initialize for now, since many modules don't expect it and it leads to many errors
remove duplicate module lists for empty modules and implemented ones, make Module non-copyable but movable
add secondary project, no real use for it now