Allow IO engine driven allocations of IO structures