title: Is there a way to allow an unknown enum tag when deserializing with Serde?
body: <p>I'm deserializing a tagged enum:</p>
  <pre><code>#[derive(Deserialize)]
  enum Foo {
      A(A),
      B(B),
      C(C),
  }
  </code></pre>
  <p>If Serde encounters a tag that isn't <code>A</code>, <code>B</code> or <code>C</code>, then it will throw an error. Is there any way to add a catch-all variant for unknown tags? I'd be happy if it only records the tag:</p>
  <pre class="lang-rust prettyprint-override"><code>#[derive(Deserialize)]
  enum Foo {
      A(A),
      B(B),
      C(C),
      #[serde(unknown_tag)]
      Unknown(String),
  }
  </code></pre>