Add support for loading indexed image files into a texture through Texture2D.FromStream

This resolves mono/MonoGame#806 and can be useful if loading images from external sources for use as textures, so I think it could be worth incorporating into MonoGame proper. This should retain the same behaviour as before for non-indexed images. It isn't quite as pretty as the old code, though, because indexed images aren't processed in place.