Would all these be better placed inside of the Gate mechanic?  It's applicable specifically to the gate, it'd be slightly more optimized as there wouldn't be a search, and this class could get messy really quick if it's the only listener we're using..