Always run pending finalizers when event_base_free() is called

(This seems to expose a couple of bugs in bufferevent finalization. Whee.)
fixup! Use finalization feature so bufferevents can avoid deadlocks

Whoops: only free filter context once.
squash! Always run pending finalizers when event_base_free() is called

There was actually a bug in the original version of this: it tried to
run the finalizers after (potentially) setting current_base to NULL;
but those finalizers could themselves (potentially) be invoking stuff
that needed to know about the current event_base.