Refactoring: removed addOutput() method from SaleService interface. Now, Outputs are pass in constructor.

Change-Id: Ib561bee6d06c081667c648864ef62e739a8b384d
Added Basket class. Receipt responsibilities was moved to Basket. Right now, Receipt is only a confirmation.

Change-Id: I1629999ddfc78f3fa70997436d5af47a343319a0
Fixed problem with modifable Receipt. Now, Receipt is immutable.

Change-Id: I51326cf3b5da363268954460e16d9eb3d6a40784