CVS to offer up to 1 million free smartphones