Fix a potential deadlock in the SNS Live Listener

In certain cases (most likely caused when the user asks the SMS to
replay all data from the start of the current run), the listener could
get into a deadlock trying to initialize the workspace. This fixes that
issue.

Also, added some code to make sure we always initialize the workspace
with the most recent data available.

Refs #9397
Merge remote branch 'origin/bugfix/9397_live_listener_regression'