Added Interface PlayerFactory and PlayerFactoryImpl