Despite blistering reviews, ‘Batman v Superman’ shattered box office records on its way to $170 million open.