calculate download progress
download progress bar + updated internal client behavior
refactored push + better logging