private function set_config( $config )
    {
        if( !isset( $config['title'] ) )
        {
            throw new \RuntimeException( 'Missing required parameter "title" for menu' );
        }
        
        if( !isset( $config['slug'] ) || '' == $config['slug'] )
        {
            $config['slug'] = \Amarkal\Common\Tools::strtoslug( $config['title'] );
        }
        $this->config = array_merge( $this->get_defaults(), $config );
    }