vfs: stop polls before destroying file object

If we stop current polls during file destruction, we have a race window
between the outer destructor being called (say socket_file::~socket_file())
and polls being stopped in file::~file().  During this race window, poll()
can be called on a partial object.

Fix by stopping polls in fdrop().

Fixes #293.

Signed-off-by: Avi Kivity <avi@cloudius-systems.com>