Nick-
Marking an article as includable is a thought, but how would you do that? You could restrict your inclusion to a special "Templates" name space, but that would not be as powerful. I don't think that would be necessary, unless there are caching considerations.
I think it would be useful to have
$wgIncludeFromNamespaces
content from all namespaces in that array could be transccluded using {{incl:}}.
$wgCacheFromNamespaces
content from all namespaces in this array would be kept in memcached.
{{repl:}} should work with all namespaces, I see no reason for it not to.
Regards,
Erik