message: Fix panic on export
  Addition of hmap and bmap causes typed export to panic.
  Instead of unreachable!() print error message that type is unsupported.
diff: @@ -96,7 +96,13 @@ impl VariableStore for Shell {
  eprintln!("ion: assignment error: {}: {}", key.name, why);
  return FAILURE;
  }
  - _ => unreachable!(),
  + _ => {
  + eprintln!(
  + "ion: assignment error: export of type '{}' is not supported",
  + key.kind
  + );
  + return FAILURE;
  + }
  }
  }
  Ok(Action::UpdateArray(..)) => {
  @@ -234,15 +240,14 @@ impl VariableStore for Shell {
  }
  }
  Operator::Filter => match value_check(self, &expression, &key.kind) {
  - Ok(VariableType::Array(values)) => match self
  - .variables
  - .get_mut(key.name)
  - {
  + Ok(VariableType::Array(values)) => {
  + match self.variables.get_mut(key.name) {
  Some(VariableType::Array(ref mut array)) => {
  *array = array
  .iter()
  - .filter(|item| values.iter().all(|value| *item != value))
  - .cloned()
  + .filter(|item| {
  + values.iter().all(|value| *item != value)
  + }).cloned()
  .collect();
  }
  None => {
  @@ -254,7 +259,8 @@ impl VariableStore for Shell {
  return FAILURE;
  }
  _ => (),
  - },
  + }
  + }
  Err(why) => {
  eprintln!("ion: assignment error: {}: {}", key.name, why);
  return FAILURE;
  @@ -469,8 +475,8 @@ impl VariableStore for Shell {
  Ok(num) => num,
  Err(_) => {
  eprintln!(
  - "ion: index variable does not contain a \
  - numeric value: {}",
  + "ion: index variable does not contain \
  + a numeric value: {}",
  index
  );
  return FAILURE;
  