The NES doesn't slow down and flicker automatically. Actually what happens is that as a game becomes more complex, and more objects are introduced into the play area, there is not enough time in one frame (1/60th of a second) to calculate all the action for one frame. The NES CPU runs at about 1.79 Mhz, not quite fast enough for some calculations. In fact, if the calculations spill over to the next frame, oftentimes a game will glitch or freeze up. So, the programmers put slowdown into the game to split the calculation between successive frames.
Flicker is usually a result of having too many sprites in one horizontal scanline. The NES can have a maximum of 8 sprites in one line. Any more than that, and the PPU simply won't display them. Thus, the programmer has to alternate between displaying one set of sprites and another. This is handled through a good algorithm of "OAM Cycling". Depending on the OAM algorithm used, the sprites might either flicker (as in many Konami games), or blank out with a rippling effect (seen in some games).