anchor.diff:  class Analyzer {
     final AnalyzerConfig config;
   
  -  ProcessResult _process;
  +  Process _process;
  +
  +  StreamSubscription<String> _inStreamSub;
   
     Analyzer(this.config);
   
     bool get isRunning => _process != null;
   
     Future<Null> start() async {
  -    if(isRunning) {
  +    if (isRunning) {
         throw new Exception("Analyzer already running!");
       }
       _process = await _createProcess(config);
  -
  -    //TODO connect writer and reader
  +    _inStreamSub = _process.stdout
  +        .transform(UTF8.encoder)
  +        .transform(new LineSplitter())
  +        .listen(_processInMsg);
  +    //TODO connect writer
     }
   
     /// Restarts, or starts, the analysis server process.
  
positive.code: 
    AnalyzerConfig(this.directory);
  
    String get dartVMPath => path.join(sdkPath, 'bin', 'dart');
  
    String getSnapshotPath(String snapshotName) =>
  
negative.code: 
  import 'dart:io';
  import 'dart:async';
  import 'dart:convert';
  import 'package:path/path.dart' as path;
  
  class AnalyzerConfig {
  