Separated web progress listener into own module