First revision (still experimental) to manage options in cart

Without this patch, the DatabaseCart is not able to detect items with
different attributes but same skus.