libsemigroups::Forest:
- Type aliases:
  - node_type
  - label_type
- Constructors:
  - Forest(size_t)
  - Forest(Forest const&) = default
  - Forest(Forest&&) = default
  - operator=(Forest const&) = default
  - operator=(Forest&&) = default
- Modifiers:
  - add_nodes(size_t)
  - clear() noexcept
  - set(node_type, node_type, label_type)
- Accessors:
  - number_of_nodes() const noexcept
  - parent(node_type) const
  - label(node_type) const
  - empty() const noexcept
- Iterators:
  - cbegin_parent() const noexcept
  - cend_parent() const noexcept
