It'd be more efficient to somehow keep the kqueue object open the whole time, I guess that's messy?