adding ItemGenerationEvent interface
removing some methods
implementing ItemGenerationEvent