Retrieves the container at the specified path.

        :param path: str or Path instance
        :return:
        :rtype: ValueTree
        :raises ValueError: A component of path is a field name.
        :raises KeyError: A component of path doesn't exist.

def get_container(self, path):
        """
        Retrieves the container at the specified path.

        :param path: str or Path instance
        :return:
        :rtype: ValueTree
        :raises ValueError: A component of path is a field name.
        :raises KeyError: A component of path doesn't exist.
        """
        path = make_path(path)
        container = self
        for segment in path:
            try:
                container = container._values[segment]
                if not isinstance(container, ValueTree):
                    raise ValueError()
            except KeyError:
                raise KeyError()
        return container