Add a generic download method.