swap Perl5::Terms <=> warnings dependency

Also we loose falsly passing tests in pack, because the assumed
that if unpacking a given directive suceeds if it does not set $@.
But looks like we have a problem setting $@ when we die in an eval.