Supondo que o servidor esteja configurado para permitir substituições, você pode usar mod_rewrite para criar todos os tipos de mapeamento. Receio que as especificidades da sua situação sejam um pouco complicadas. Não estou claro onde você está mantendo essas listas e se há alguma regra coerente sobre como elas são construídas. Se existe um sistema, você poderia usar o mod_rewrite assim:
RewriteEngine on
RewriteRule ^/other/william/classlibrary/([a-z]*).ext /other/william/classlibrary/$1library.ext
No entanto, isso só funciona se o nome do link corresponder ao nome da classe de alguma forma. Você pode descobrir mais sobre mod_rewrite no link
Se o relacionamento for muito complicado ou arbitrário para que uma expressão regular e uma referência anterior sejam úteis, você poderá usar um reescrito que permitirá criar uma tabela de reescritas arbitrárias. link
Se tudo isso parece muito complicado e você não tem muitos redirecionamentos, você pode simplesmente usar o comando de redirecionamento mais simples para executá-los um por um no arquivo .htaccess:
Redirect /other/william/classlibrary/filename.extension http://classlibrary.org/other/william/classlibrary/classlibrary.extension