IdempotentStorageManager and its integration with FileSplitter

The operator will recover in a non-idempotent manner. Recovery is supported by the operator itself. For eg. in this case the operator keeps processed files in a checkpoint-ed state. So when it recovers the base AbstractFSDirectoryScanner would not scan the files that were processed before that check-pointed window.

When Recovered in the idempotent manner, the tuples are replayed for window after the checkpoint if that window was completed and also in the replay mode the operator state (check-pointed state)  is fixed. For eg. here in the replay the file is added to processed set.