message: MemoryBlockStore::put_tag(): Return error if block ID does not exist
diff: @@ -54,10 +54,14 @@ where
  }
  fn put_tag(&mut self, tag_name: &str, block_hash: &B::Id) -> Result<(), Error> {
  - assert!(self.blocks.get(block_hash).is_some()); // FIXME: return error
  + match self.blocks.get(block_hash) {
  + None => Err(Error::BlockNotFound),
  + Some(_) => {
  self.tags.insert(tag_name.to_string(), block_hash.clone());
  Ok(())
  }
  + }
  + }
  fn get_tag(&self, tag_name: &str) -> Result<Option<B::Id>, Error> {
  if let Some(hash) = self.tags.get(tag_name) {
  