Fix for default_weight of 0 error and added support for a max package weight

A default weight of zero doesn't throw a divide by zero error anymore. Added a test condition for it.

The max weight per package is useful if you want to

a) limit package weights so they don't go above carrier limits like UPS's 150lb limit.
b) have a company rule that splits boxes after a certain weight.

It is implemented to respect the countries max weight if that happens to be lower.