updated png loading to support all formats (except interlaced, still working on that)