Ben Affleck cast as new batman.