Description
In this challenge, you are tasked to restructure an existing application that is based around the creation of a pricing calculator that works how much it will cost to ship goods based on their weight and the type of shipping requested (Standard, Express, International). As it stands, the application works and there is a set of unit tests to prove this. However, the code is poorly designed and needs to be refactored by restructuring the code to make proper use of interfaces, abstract classes and inheritance.