Adds states which put you into an infinite loop of choosing infrastructure to add.  Does not actually build any infrastructure.
Makes it so that an event can have an associated callback function which gets called as part of that event taking place.