I believe what's not recommended is changing the content models shipped with the product (ie. the models in /alfresco/model/contentModel.xml). This means you shouldn't change any of the out-of-the-box "cm:" types, even if it's as innocuous a change as adding the versionable aspect as a mandatory aspect. The reason for this is that Alfresco reserves the right to modify the out-of-the-box models at any time, so if you modify them chances are your modifications will be lost during an upgrade.
That said you can accomplish the same thing by adding your own custom type (which inherits cm:content), making the versionable aspect mandatory for that type and then (if it's a requirement) making that type the default type for all newly created content.
Cheers,
Peter