I have thought much on this problem, and although there is a programmatic solution, I am more fond of a brute force approach.
I used Moodle all through the courses I taught last year, adding plans, assignments, forums, workshops, etc. Rather than dumping it all and starting over,
1) Students will be unenrolled and enrolled by the administrator.
2) I will go through and hide all the weeks except for the first one.
3) Keeping the activities
from last year, I will go through and tweak what I need to, including changing the dates and minor changes to the text.
Basically, it'd be nice if step 2) could be done for me (and I think the Reset option now available may do some of it) and the dates could all be bumped. But since I will want to look into each activity anyway, it's not that much work.
Thus each course is never really archived. It is just tweaked and reused.