code: public Tags filter(Set<String> tag_names) {
          return Tags.valueOf(tags_.entrySet().stream()
                  .filter(entry -> tag_names.contains(entry.getKey())));
      }
docs: Reduce the list of tags, to only those specified in the argument set.
  @param tag_names The tag names to retain.
  @return A new instance of tags, which contains only tags mentioned in the argument set.