textbook approach to api versioning