Because majorit of the APIv2 is defined in the V1 controllers: therefore a lot of features overlap. For example, creating an operating system is defined only in V1 controller, but it's avaliable both in APIv1 and APIv2. That's why it's defined like this: this means that you see all the features when you show the documentation for v2. In case some resources/actions from V1 are not available in V2, it should be stated explicitely in that resource/action (by calling `api_version "1"` - this overrides what is defined in base_controller)