Refactoring : Enf of refactoring. All the tests pass and code is uptodate.