Bom dia amigo,
Não sei se conheces o modelo interno do alfresco, mas de qualquer forma vale lembrar "everything is node" - Tudo é nó. Assim, o que tens que fazer para as questões 2 e 3 é simplesmente atuar sobre estes nós.
Para o tópico 2 basta criar um botão na interface (freemarker) que tenha sua função acionada através da API YUI que invoque um novo webscript (em uma nova página - target="_blank") que renderize o conteúdo do nó (página wiki) da melhor forma para a impreção.
Para o tópico 3, o que deve ser feito é a interceptação da criação do nó wiki e retirar toda a permição dos usuários comum deixando apenas permição para o moderador. Em complemento deve-se criar workflow de aprovação cuja ação aprovar coloque as permições devidas ao outros usuários da wiki.
Para o tópico 4 pode ser implementado de maneira facil através de um behavior que cria um registro dentro do site e o atualize a cada página wiki criada.
O tópico 1 pode ser criado atuando sobre o template freemarker da wiki, que faça todo o conteúdo ser mostrado da mesma forma na wiki.
att.