WorkerSimple: fix file object handling behavior

WorkerSimple shouldn't "own" file objects passed as argument, so:
- just keep reference to file objects during instance lifetime
- do not close files when worker is closing
- use pipe+fdopen in test (don't use fd directly in WorkerSimple)

Change-Id: I270b21a442e6d771a6a2f41be9b93d66287f96b3