Change GetChanges into Transform

Transform returns the updated source. This is easier to pass into
MonoDevelop than a list of ranges.
Fix error message when newName is already bound