improve logic on cart, allow single downloads with only a custom price set to checkout, js logic