code: func (svmMap *serviceVMMap) get(id string) (*serviceVM, error) {
  	svmMap.Lock()
  	defer svmMap.Unlock()
  	svm, ok := svmMap.svms[id]
  	if !ok {
  		return nil, errVMUnknown
  	}
  	if svm.refCount == 0 {
  		return svm.svm, errVMisTerminating
  	}
  	return svm.svm, nil
  }
docs: // get will get the service vm from the map. There are three cases:
  // 	- entry doesn't exist:
  // 		- return errVMUnknown
  //	- entry does exist
  //  	- return vm with no error
  //  - entry does exist but the ref count is 0
  //		- return the svm and errVMisTerminating. Caller can call svm.getStopError() to wait for stop