public function definition($concrete = null, array $args = [])
    {
        /**
         * @todo validate that $concrete is a string or null
         */

        $definition = new Definition($this, $concrete, $args);

        return $definition;
    }