Refactor candidate module handling
Pass protocolModules object to connection
Parse function maintains a list of candidateModules modules
When module successfully parses message, remove candidateModules and set protocolModule variable on connection object