Refactor progressbar & add optional watch directive for max