aexpect: Fix fd leaks

An aexpect client, such as Spawn, Tail or other derived
classes keeps open fds to the server reader pipes. once
they get garbage collected, then we have a bunch of fds
that will fall into oblivion, at least 6 fds for each
instance that is garbage collected.

So the solution here is to close all reader fds upon
__del__() calls. This fixes the exploding number of
open files on a simple ./run -t qemu, from 300+ open
files to 15-41 files opened at a given moment. Not
bad.

Yiqiao and Qingtang, please apply this to your internal
tree, it's a simple fix that will end with all the
'too many files opened' problem when running tests, so
I'd say it will be a very welcome fix.

CC: Gerd Hoffmann <kraxel@redhat.com>
CC: Yiqiao Pu <ypu@redhat.com>
CC: Qingtang Zhou <qzhou@redhat.com>
CC: Chris Evich <cevich@redhat.com>
Signed-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>