ScanningStateImplRepo   
  constructor(createScanner: suspend () -> Scanner, contextForIdentifier: (Identifier) -> CoroutineContext, coroutineContext: CoroutineContext)
Parameters
createScanner 
method for creating the Scanner to manage the ScanningState
contextForIdentifier  
method for creating CoroutineContext given an Identifier
coroutineContext 
the CoroutineContext the CoroutineContext used to create a coroutine scope for this state machine.