Refactored into Factory and implementing bullet shooting