Cleaned callbacks and added the download as an optional boolean