rewrite the FAP-related structures, now they are all in taint.h/.cpp