Refactoring with Fowler Working through Martin Fowler’s Refactoring: Improving the Design of Existing Code