retain connection - resolves time overlap when multiple watchers are established
also results in better performance
debug statements no longer use emitter (same functionality, less complex)
added normal format