Marx's General: The Revolutionary Life of Friedrich Engels