internal/router: add fullySpecified parameter to IdHandler

We also change internal/v4 so that the Cache-Control header is only added when the id is fully specified.
Since this is used also elsewhere (not only in archive), perhaps rename it to just setCacheControl?