1. Within a computing system that includes a service implementation of a web service contract document, the contract document defining how the service implementation is to communicate with a particular service, a method of automatically changing at least a portion of the service implementation in response to changes in the web service contract document, the method comprising: the computing system receiving a web service implementation that has been constructed in accordance with a first web service contract, the first web service contract describing how the web service implementation is to communicate with one or more services and the web service implementation comprising an existing set of classes; the computing system receiving a second web service contract document, the second web service contract document defining one or more changes to the first web service contract, the changes affecting the behavior of the web service implementation; creating a new set of classes from the second web service contract document; comparing the new set of classes to the existing set of classes; determining if there are changes to a binding name or namespace; when there are changes to the binding name or namespace, updating one or more methods in the web service implementation to reflect the changes; determining if an operation name in the second contract does not match a method name in the web service implementation; when the operation name in the second contract does not match a method name in the web service implementation, then adding a method corresponding to the operation name to the web service implementation; when the operation name in the second contract matches a method name in the web service implementation, then determining if the method is exposed as a web service operation; when the method is not exposed as a web service operation, then exposing the method by adding a web method attribute to the unexposed method; determining if the method exposed in the web service implementation is not exposed in the second contract; when the method is exposed in the web service implementation but is not exposed in the second contract, then unexposing the method in the web service implementation, preserving the method for future reference, and adding a comment stating when and why the method is no longer exposed; identifying one or more differences between the web service implementation constructed in accordance with the first web service contract and the second web service contract document; and based on the one or more identified differences, modifying at least a portion of the web service implementation such that the modified implementation's class, class attributes, message exchange format, methods, and method attributes conform to the second web service contract document.