#14 changed agree method to accept empty shipping address
#14 changed deliver method to accept empty shipping address
Clarified Logic of specifications. They didn't defined what they were supposed to.