Return a new fd allocator.
a new fd allocator, or NULL if the allocator isn't available. Use unref to release the allocator after usage