Actually you can't define a `Record` companion object without losing the case-class generated methods, such as `.tupled`, which we are using. Is there somewhere else we could put it?