Fix a use-after-free bug on libdir

The problem is that I was freeing c->libdir when I meant to free
c->srcdir.  Silly mistake!
Have GENERATE respect SRCDIR

I was using the wrong sort of context inquiry function:
context_new_defaults produces a new context every time, whereas
contextstack_peek_defaults will properly look at where we are and
produce the correct context.

I'm not sure why I did this, it's blatently wrong...
Bump version to 0.7.2