The user of the lib can now take control over a new FD or the update
operation of an existing FD.
Opening the output tracefile is now the responsiblity of the user
and not the library itself.
[ Edit by Mathieu Desnoyers: comment and teardown cleanups ]