Added Spy/gatherers + refactor