Fix for issue 4839

Fixed so that changing address to a non-taxable zone now reverts the applied tax. 

@joneslee85, sure thing. I hate to pollute this discussion thread with this more generic topic, but for lack of a better venue to respond, here goes:
I wouldn't categorically say using ```send``` is bad, per se, but it should be used with caution and some forethought on whether there is a better way to do it.
Send is simply a mechanism to push a message to any object, regardless of whether that object even has the message that you send. This method is useful for occasions when you are meta-programming and need to dynamically send messages to an object that are built dynamically based on an existing state, for example. Even in this case, you should be careful that you are sending messages that actually exist on the object, and you should likely include a rescue for NoMethodError, in case the method does not exist on the target. You can also check for such errors ahead of time using ```respond_to?```.
All of that said, ```send``` has another capability in that it works against private methods, which is unfortunate, in my opinion. This is essentially a native Ruby mechanism to break the abstraction provided by defining a method as private. I feel this is a weak link in the Ruby language itself and most certainly breaks all kinds of object oriented programming principles. If you want to be able to call a method from outside the object, you shouldn't be defining the method as private. Private methods are a way to organize logic internal to the object, which would define implementation details that should not be known by anything external to the object itself. This is encapsulation, and using ```send``` to call an internal method blatantly disregards such encapsulation. I find that send is generally used to call private methods for convenience, when a better design would alleviate the need for send and make the code more resilient to changes in the target object's class.

In short: "just because you can, doesn't mean you should"  :wink: