1) Drush can now use Composer to manage dependencies and extensions for both Drupal 8 and Drupal 7 sites. Composer is used to manage Drush and Drupal core together.
2) Drush implements a "site-local" approach to avoid dependency hell issues between extensions and core. Each Drupal site can have its own isolated version of Drush that will be used.
3) Drush extensions that use Composer libraries need to be included in the Drupal project's composer.json file. The drush_autoload function ensures extensions work with both Composer-managed and non-Composer sites.