updated cart code, better way to allow product options and profiles.