diff --git a/academic_applications.module b/academic_applications.module
index cdfe8e1..2cc6547 100644
--- a/academic_applications.module
+++ b/academic_applications.module
@@ -51,5 +51,5 @@ function academic_applications_form_alter(&$form, FormStateInterface $form_state
  */
 function academic_applications_entity_type_alter(array &$entity_types) {
   /* @var $entity_types \Drupal\Core\Entity\EntityTypeInterface[] */
-  $entity_types['webform_submission']->setListBuilderClass('Drupal\academic_applications\WebFormSubmissionListBuilderOverride');
+  $entity_types['webform_submission']->setListBuilderClass('Drupal\academic_applications\WebformSubmissionListBuilder');
 }
diff --git a/src/Controller/BundleController.php b/src/Controller/BundleController.php
index cd2a2f0..a39bbeb 100644
--- a/src/Controller/BundleController.php
+++ b/src/Controller/BundleController.php
@@ -5,7 +5,7 @@ namespace Drupal\academic_applications\Controller;
 use Drupal\academic_applications\SubmissionBundler;
 use Symfony\Component\DependencyInjection\ContainerInterface;
 use Drupal\Core\Controller\ControllerBase;
-use Drupal\webform\WebFormSubmissionInterface;
+use Drupal\webform\WebformSubmissionInterface;
 use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
 
 /**
@@ -40,14 +40,14 @@ class BundleController extends ControllerBase {
   /**
    * The title callback.
    */
-  public function title(WebFormSubmissionInterface $webform_submission) {
+  public function title(WebformSubmissionInterface $webform_submission) {
     return $this->t('Webform Submission #@id Bundle', ['@id' => $webform_submission->id()]);
   }
 
   /**
    * The page action for bundling.
    */
-  public function bundleAction(WebFormSubmissionInterface $webform_submission) {
+  public function bundleAction(WebformSubmissionInterface $webform_submission) {
 
     $file = $this->bundler->bundle($webform_submission);
     if (file_exists($file)) {
diff --git a/src/Form/WorkflowDeleteForm.php b/src/Form/WorkflowDeleteForm.php
index d57fbc1..eeb9e02 100644
--- a/src/Form/WorkflowDeleteForm.php
+++ b/src/Form/WorkflowDeleteForm.php
@@ -4,13 +4,41 @@ namespace Drupal\academic_applications\Form;
 
 use Drupal\Core\Entity\EntityConfirmFormBase;
 use Drupal\Core\Form\FormStateInterface;
+use Drupal\Core\Messenger\MessengerInterface;
 use Drupal\Core\Url;
+use Symfony\Component\DependencyInjection\ContainerInterface;
 
 /**
  * Builds the form to delete workflow entities.
  */
 class WorkflowDeleteForm extends EntityConfirmFormBase {
 
+  /**
+   * The messenger service.
+   *
+   * @var \Drupal\Core\Messenger\MessengerInterface
+   */
+  protected $messenger;
+
+  /**
+   * Construct a WorkflowDeleteForm.
+   *
+   * @param \Drupal\Core\Messenger\MessengerInterface $messenger
+   *   The messenger service.
+   */
+  public function __construct(MessengerInterface $messenger) {
+    $this->messenger = $messenger;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public static function create(ContainerInterface $container) {
+    return new static(
+      $container->get('messenger')
+    );
+  }
+
   /**
    * {@inheritdoc}
    */
@@ -38,7 +66,7 @@ class WorkflowDeleteForm extends EntityConfirmFormBase {
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $this->entity->delete();
 
-    drupal_set_message(
+    $this->messenger->addMessage(
       $this->t('content @type: deleted @label.',
         [
           '@type' => $this->entity->bundle(),
diff --git a/src/Form/WorkflowForm.php b/src/Form/WorkflowForm.php
index e47e382..998a375 100644
--- a/src/Form/WorkflowForm.php
+++ b/src/Form/WorkflowForm.php
@@ -5,6 +5,7 @@ namespace Drupal\academic_applications\Form;
 use Drupal\Core\Entity\EntityForm;
 use Drupal\Core\Form\FormStateInterface;
 use Drupal\Core\Entity\Query\QueryFactory;
+use Drupal\Core\Messenger\MessengerInterface;
 use Symfony\Component\DependencyInjection\ContainerInterface;
 
 /**
@@ -21,21 +22,34 @@ class WorkflowForm extends EntityForm {
    */
   protected $entityQueryFactory;
 
+  /**
+   * The messenger service.
+   *
+   * @var \Drupal\Core\Messenger\MessengerInterface
+   */
+  protected $messenger;
+
   /**
    * Construct the WorkflowForm.
    *
    * @param \Drupal\Core\Entity\Query\QueryFactory $query_factory
    *   An entity query factory.
+   * @param \Drupal\Core\Messenger\MessengerInterface $messenger
+   *   The messenger service.
    */
-  public function __construct(QueryFactory $query_factory) {
+  public function __construct(QueryFactory $query_factory, MessengerInterface $messenger) {
     $this->entityQueryFactory = $query_factory;
+    $this->messenger = $messenger;
   }
 
   /**
    * {@inheritdoc}
    */
   public static function create(ContainerInterface $container) {
-    return new static($container->get('entity.query'));
+    return new static(
+      $container->get('entity.query'),
+      $container->get('messenger')
+    );
   }
 
   /**
@@ -102,17 +116,17 @@ class WorkflowForm extends EntityForm {
 
     switch ($status) {
       case SAVED_NEW:
-        drupal_set_message($this->t('Created the %label workflow.', [
+        $this->messenger->addMessage($this->t('Created the %label workflow.', [
           '%label' => $workflow->label(),
         ]));
         break;
 
       default:
-        drupal_set_message($this->t('Saved the %label workflow.', [
+        $this->messenger->addMessage($this->t('Saved the %label workflow.', [
           '%label' => $workflow->label(),
         ]));
     }
-    $form_state->setRedirectUrl($workflow->urlInfo('collection'));
+    $form_state->setRedirectUrl($workflow->toUrl('collection'));
   }
 
   /**
diff --git a/src/SubmissionBundler.php b/src/SubmissionBundler.php
index 2fc9922..45862f0 100644
--- a/src/SubmissionBundler.php
+++ b/src/SubmissionBundler.php
@@ -8,7 +8,7 @@ use Drupal\Core\Entity\Query\QueryFactory;
 use Drupal\Core\File\FileSystemInterface;
 use Drupal\file\Entity\File;
 use Drupal\webform\Entity\WebformSubmission;
-use Drupal\webform\WebFormSubmissionInterface;
+use Drupal\webform\WebformSubmissionInterface;
 
 /**
  * Class SubmissionBundler converts Webform submissions into PDFs.
@@ -70,13 +70,13 @@ class SubmissionBundler {
   /**
    * Converts submission field data and attached PDFs into a single PDF.
    *
-   * @param \Drupal\webform\WebFormSubmissionInterface $submission
+   * @param \Drupal\webform\WebformSubmissionInterface $submission
    *   A Webform submission.
    *
    * @return string
    *   The filesystem path to the bundled file.
    */
-  public function bundle(WebFormSubmissionInterface $submission) {
+  public function bundle(WebformSubmissionInterface $submission) {
 
     $uris[] = $this->submissionToPdf($submission);
 
@@ -148,13 +148,13 @@ class SubmissionBundler {
   /**
    * Finds the upload submissions affiliated with an application submission.
    *
-   * @param \Drupal\webform\WebFormSubmissionInterface $webFormSubmission
+   * @param \Drupal\webform\WebformSubmissionInterface $webFormSubmission
    *   A Web form submission.
    *
-   * @return \Drupal\webform\WebFormSubmissionInterface[]
+   * @return \Drupal\webform\WebformSubmissionInterface[]
    *   Upload submissions.
    */
-  public function uploadFormSubmissions(WebFormSubmissionInterface $webFormSubmission) {
+  public function uploadFormSubmissions(WebformSubmissionInterface $webFormSubmission) {
     $workflowMap = $this->workflowConnector->workflowMap();
     $related_submissions = [];
     if (isset($workflowMap[$webFormSubmission->getWebForm()->id()])) {
@@ -162,7 +162,7 @@ class SubmissionBundler {
         ->condition('webform_id', $workflowMap[$webFormSubmission->getWebForm()->id()]);
       $submission_ids = $query->execute();
       $related_submissions = [];
-      foreach (WebFormSubmission::loadMultiple($submission_ids) as $submission) {
+      foreach (WebformSubmission::loadMultiple($submission_ids) as $submission) {
         /* @var WebformSubmissionInterface $submission */
         if ($submission->getElementData('wt') == $webFormSubmission->uuid()) {
           $related_submissions[] = $submission;
@@ -176,20 +176,20 @@ class SubmissionBundler {
   /**
    * Converts a submission to a PDF.
    *
-   * @param \Drupal\webform\WebFormSubmissionInterface $webFormSubmission
+   * @param \Drupal\webform\WebformSubmissionInterface $webFormSubmission
    *   Webform submission.
    *
    * @return string
    *   The PDF URI.
    */
-  protected function submissionToPdf(WebFormSubmissionInterface $webFormSubmission) {
+  protected function submissionToPdf(WebformSubmissionInterface $webFormSubmission) {
     $outputFilename = $webFormSubmission->getWebForm()->id() . '-' . $webFormSubmission->id() . '-results.pdf';
     $outputUri = 'temporary://' . $outputFilename;
     $pdf = new \FPDF('P', 'in', 'Letter');
     $pdf->addPage();
     $pdf->SetFont('Arial', '', 10);
     $this->submissionResultsToPdf($pdf, $webFormSubmission);
-    file_unmanaged_save_data($pdf->Output($outputFilename, 'S'), $outputUri, FILE_EXISTS_REPLACE);
+    $this->fileSystem->saveData($pdf->Output($outputFilename, 'S'), $outputUri, FileSystemInterface::EXISTS_REPLACE);
     return $outputUri;
   }
 
@@ -228,10 +228,10 @@ class SubmissionBundler {
    *
    * @param \FPDF $pdf
    *   An FPDF.
-   * @param \Drupal\webform\WebFormSubmissionInterface $webFormSubmission
+   * @param \Drupal\webform\WebformSubmissionInterface $webFormSubmission
    *   A Webform submission.
    */
-  protected function submissionResultsToPdf(\FPDF $pdf, WebFormSubmissionInterface $webFormSubmission) {
+  protected function submissionResultsToPdf(\FPDF $pdf, WebformSubmissionInterface $webFormSubmission) {
     $results = $webFormSubmission->getData();
     foreach ($webFormSubmission->getWebForm()->getElementsInitializedAndFlattened() as $machine_name => $element) {
       $pdf->SetFont('', 'B');
diff --git a/src/SubmissionPdfFinder.php b/src/SubmissionPdfFinder.php
index 608769a..d5f1975 100644
--- a/src/SubmissionPdfFinder.php
+++ b/src/SubmissionPdfFinder.php
@@ -2,8 +2,8 @@
 
 namespace Drupal\academic_applications;
 
-use Drupal\webform\WebFormInterface;
-use Drupal\webform\WebFormSubmissionInterface;
+use Drupal\webform\WebformInterface;
+use Drupal\webform\WebformSubmissionInterface;
 use Drupal\academic_applications\Validator\PdfValidator;
 
 /**
@@ -14,13 +14,13 @@ class SubmissionPdfFinder {
   /**
    * Gets the file IDs of PDFs in a form submission.
    *
-   * @param \Drupal\webform\WebFormSubmissionInterface $webFormSubmission
+   * @param \Drupal\webform\WebformSubmissionInterface $webFormSubmission
    *   A Webform submission.
    *
    * @return array
    *   File IDs.
    */
-  public function getFileIds(WebFormSubmissionInterface $webFormSubmission) {
+  public function getFileIds(WebformSubmissionInterface $webFormSubmission) {
     $file_ids = [];
     $pdf_elements = $this->getManagedFileElements($webFormSubmission->getWebform());
     $submission_data = $webFormSubmission->getData();
@@ -35,13 +35,13 @@ class SubmissionPdfFinder {
   /**
    * Gets form elements that store PDFs in a form submission.
    *
-   * @param \Drupal\webform\WebFormInterface $webForm
+   * @param \Drupal\webform\WebformInterface $webForm
    *   A Webform submission.
    *
    * @return array
    *   Form elements that store PDFs.
    */
-  protected function getManagedFileElements(WebFormInterface $webForm) {
+  protected function getManagedFileElements(WebformInterface $webForm) {
     $pdf_elements = [];
     foreach ($webForm->getElementsInitializedAndFlattened() as $element) {
       if (PdfValidator::elementStoresPdf($element)) {
diff --git a/src/WebFormSubmissionListBuilderOverride.php b/src/WebformSubmissionListBuilder.php
similarity index 94%
rename from src/WebFormSubmissionListBuilderOverride.php
rename to src/WebformSubmissionListBuilder.php
index 2870d6f..cfeb075 100644
--- a/src/WebFormSubmissionListBuilderOverride.php
+++ b/src/WebformSubmissionListBuilder.php
@@ -13,14 +13,14 @@ use Drupal\Core\Url;
 use Drupal\webform\Plugin\WebformElementManagerInterface;
 use Drupal\webform\WebformMessageManagerInterface;
 use Drupal\webform\WebformRequestInterface;
-use Drupal\webform\WebformSubmissionListBuilder;
+use Drupal\webform\WebformSubmissionListBuilder as OriginalWebformSubmissionListBuilder;
 use Symfony\Component\DependencyInjection\ContainerInterface;
 use Symfony\Component\HttpFoundation\RequestStack;
 
 /**
  * Overrides the WebformSubmissionListBuilder.
  */
-class WebFormSubmissionListBuilderOverride extends WebformSubmissionListBuilder {
+class WebformSubmissionListBuilder extends OriginalWebformSubmissionListBuilder {
 
   /**
    * The submission bundler.
@@ -35,7 +35,7 @@ class WebFormSubmissionListBuilderOverride extends WebformSubmissionListBuilder
   public static function createInstance(ContainerInterface $container, EntityTypeInterface $entity_type) {
     return new static(
       $entity_type,
-      $container->get('entity.manager')->getStorage($entity_type->id()),
+      $container->get('entity_type.manager')->getStorage($entity_type->id()),
       $container->get('entity.manager'),
       $container->get('current_route_match'),
       $container->get('request_stack'),
@@ -124,7 +124,7 @@ class WebFormSubmissionListBuilderOverride extends WebformSubmissionListBuilder
       $submissions = $this->submissionBundler->uploadFormSubmissions($entity);
       $count = 1;
       foreach ($submissions as $submission) {
-        $links[] = !empty($submission->getData()['name']) ? $submission->link($submission->getData()['name']) : $submission->link($count);
+        $links[] = !empty($submission->getData()['name']) ? $submission->toLink($submission->getData()['name']) : $submission->toLink($count);
         $count++;
       }
       $row = [
