Use Address model
Added basic classes for collection surcharges
Check if a collection surcharge has tax
A collection surcharge can have a tax amount for each product in the collection
Use exception from global namespace
Renamed getLabel(s) method to getClassLabel(s) for better uniqueness
Model must have a table name
Throw exception if a model class can't be found
Fixed duplicate variable assignment
Added isPercentage() method to shipping and payment methods
Fixed namespace issues
No need to import Isotope object, all methods are static
Fixed namespaces of shipping and payment methods

This special registration is necessary to find the classes for backend
listing.