public static function registerSubclass()
    {
        if (isset(static::$avClassName))
        {
            if (!in_array(static::$avClassName, self::$registeredSubclasses))
            {
                self::$registeredSubclasses[static::$avClassName] = get_called_class();
            }
        } else
        {
            throw new \Exception("Cannot register a subclass that does not have a avClassName");
        }
    }