@jamalex one issue here is the handling of the topic root, whose location ('/') doesn't fit the scheme outlined here.
Options:
* Leave that topic path as '/'
* Have a function that maps '/topics/' to '/' for caching
* Have a URL redirect from '/topics/' to '/' (though I don't think this will work for the caching helpers)

Thoughts?  I see downsides to all.