ImageLoader: if one dimension is explicit, and the other dimension isn't, the other dimension should scale by same amount (closes #340). no longer uses pixelPerfect scaling for RectangleUtil.fit().