Salesforce: Why do Apex classes have an API version?