Fixed a bug when images don't have ImageWidth and Length attributes and make sure we also try to load the Exif IFD
Properly decode at least short and byte values that are not offset values. I've found some images with rubbish is the unused bytes
Fixed reading short ascii values from tags, added more debugging to dump() and a couple of tags
Work around IFDs that consider the next ifd a tag