I'm not really sure what I want. It doesn't make much sense for the modulestore to know about the url patterns, since it's not serving up the content. But the pattern makes me go ick. I think probably what I'd really want is for the static content storage to be configurable just like the modulestore, and for it to produce the rewrites. But that seems like it would be way out of scope for this PR.