Using internal oscillator and turning the MCLR into an input will make it very difficult to reprogram the chip. From the discussion with Melabs, and other threads on the list, it appears that the program starts running before the programmer can take control.
Without a way to reset, or control of the system clock, the exact timing needed to take control of the processor before the program starts running is hard to achieve.Powering the chip from the programmer, if possible, helps, but doesn't guarantee success. When I need to use all outputs and the internal oscillator, I will program the chip with MCLR active until the last moment. I check out all operations short of the one attached to the MCLR pin, and change the config after the final revision.
Hope this helps,
Ron