Graphic card limitations. Quite a few graphic cards render textures much more efficiently if their size is power of two (16x16, 32x32, 64x16, 512x512 etc.). Some even have errors if you don't supply power-of-two textures (seams, tearing etc.).
So it is a good practice to stick to sizes like 256x256, 512x16 etc. (don't have to be squares).
As for large scale images, if only there was a way to only load a part of the source image... Alas, you'll have to make use of some tool to break those large images up, index each piece and then have Construct load them before they are displayed.
You could also use level of detail; a low-resolution image for preview, then as you get closer, show the high-resolution one. Just like Google Maps.