Why self-checkout has been an inconvenient 'failure' for both shoppers and stores