code: func (store *FileStore) Get(key string) packets.ControlPacket {
  	store.RLock()
  	defer store.RUnlock()
  	if !store.opened {
  		ERROR.Println(STR, "Trying to use file store, but not open")
  		return nil
  	}
  	filepath := fullpath(store.directory, key)
  	if !exists(filepath) {
  		return nil
  	}
  	mfile, oerr := os.Open(filepath)
  	chkerr(oerr)
  	msg, rerr := packets.ReadPacket(mfile)
  	chkerr(mfile.Close())
  
  	// Message was unreadable, return nil
  	if rerr != nil {
  		newpath := corruptpath(store.directory, key)
  		WARN.Println(STR, "corrupted file detected:", rerr.Error(), "archived at:", newpath)
  		os.Rename(filepath, newpath)
  		return nil
  	}
  	return msg
  }
docs: // Get will retrieve a message from the store, the one associated with
  // the provided key value.