The problem is, `@action and @link` are a bit awkward to use when you have a full viewset to support with multiple methods etc. It's fine for isolated extra actions, but not for a whole set. We were already using the router approach (and not just for collections), so I think it's fine to continue that way, it's actually pretty simple.