add event emitter util, create state progress monitor service and state progress indicator directive