array $params - An associative array of parameters:
one of:
$params['file'] - filepath
$params['data'] - raw data
$params['resource'] - resource handle
and any of:
$params['gzip'] - whether to gzip the download
$params['cache'] - whether to allow client side caching of the download
$params['lastmodified'] - unix timestamp of last modification
$params['contenttype'] - content type
$params['contentdisposition'] - content disposition
"Content-Disposition" is not HTTP compliant, but most browsers follow this header, so it was borrowed from MIME standard. It looks like this: "Content-Disposition: attachment; filename=example.tgz".