How to make loops that don't stop in the middle

Imagine you animate something moving in square or circle, a continuous loop. You’d animate it at 4 points. However, at the first and last frame, it would briefly come to a stop because that’s just how the graph editor’s natural settings are programmed, and then start moving again, ruining the continuous loop. How do you get rid of that brief stop?
Basically, how can I do a “make cyclic” setting in the graph edit but only have the graphs run through one cycle and be constant/0 everywhere else?

So you’ve got one cycle of animation. The last keyframes are the same as the first, right?
In the DopeSheet or GraphEditor, go to the end of the cycle, then go one frame back on the timeline.
Set a keyframe for all channels, then delete the keyframes on the last frame.

Now the animation is looping without stop at last/first frame. You still might have to tweak the handles in GraphEditor for a smooth transition…

Okay well the way I do it…
Create my key frames…
open the graph editor…
select the pertinate key channel in the left side…
hit ‘home’ key to center and zoom those channels to fit the window…
hit “T” and pick “Linear” under the 'interpolation" settings…
(or use the Right hand tool bar menu and find interpolation … and set it to linear…)
Then… from the Right hand tool bar > under the ‘modifiers’ tab > add a modifier > Select 'cycles > in the ‘before’ field select “Repeat with offset” > do the same for the ‘after’ field…