Why can't I update core from 8.6.16 to 8.7.1?
There seem to be some version dependency issue with that email-validator. 

I solved it by updating the composer.json to the newer version before updating Drupal: 

composer require drupal/core:~8.7.0 --no-update
composer require webflo/drupal-core-require-dev:~8.7.0 --no-update
composer update drupal/core webflo/drupal-core-require-dev --with-dependencies --dry-run
composer update drupal/core webflo/drupal-core-require-dev --with-dependencies 
cd web
[../vendor/bin/]drush updatedb
[../vendor/bin/]drush cr


YMMV, here is the Issues where you can get more help if this doesn't work (check the related Issues as well): 

Cannot update to Drupal 8.7.0 from 8.6.15 -- egulias/email-validator version conflict  

Don't forget to attach your composer.json and composer.lock there so the problem can be properly diagnosed.