Reintegration

Commits from integration branch without agent/worker communication refactoring and tests
yes, it was causing agents to disconnect. Since we are logging everything for debugging purposes, we have too many messages going to the agent and that overshadows the heartbeat. Therefore, we need that rate of messages to be reduced.