ignore vim swap files
cache ERRSV in a local variable

Turns out 'SvTRUE(ERRSV)' expands to truly hideous code.
'SV *err = ERRSV; if (SvTRUE(err))' looks slightly better.
don't allocate when parsing unknown keywords
wibble
version bump