diff --git a/core/lib/Drupal/Core/Entity/EntityType.php b/core/lib/Drupal/Core/Entity/EntityType.php
index 3a32d4a..0c8ca7a 100644
--- a/core/lib/Drupal/Core/Entity/EntityType.php
+++ b/core/lib/Drupal/Core/Entity/EntityType.php
@@ -233,6 +233,13 @@ class EntityType implements EntityTypeInterface {
   protected $constraints = array();
 
   /**
+   * Any additional properties and values.
+   *
+   * @var array
+   */
+  protected $additional = [];
+
+  /**
    * Constructs a new EntityType.
    *
    * @param array $definition
@@ -248,7 +255,7 @@ public function __construct($definition) {
     }
 
     foreach ($definition as $property => $value) {
-      $this->{$property} = $value;
+      $this->set($property, $value);
     }
 
     // Ensure defaults.
@@ -279,14 +286,25 @@ public function __construct($definition) {
    * {@inheritdoc}
    */
   public function get($property) {
-    return isset($this->{$property}) ? $this->{$property} : NULL;
+    if (property_exists($this, $property)) {
+      $value = isset($this->{$property}) ? $this->{$property} : NULL;
+    }
+    else {
+      $value = isset($this->additional[$property]) ? $this->additional[$property] : NULL;
+    }
+    return $value;
   }
 
   /**
    * {@inheritdoc}
    */
   public function set($property, $value) {
-    $this->{$property} = $value;
+    if (property_exists($this, $property)) {
+      $this->{$property} = $value;
+    }
+    else {
+      $this->additional[$property] = $value;
+    }
     return $this;
   }
 
diff --git a/core/lib/Drupal/Core/Field/Entity/BaseFieldOverride.php b/core/lib/Drupal/Core/Field/Entity/BaseFieldOverride.php
index ecf7665..751693d 100644
--- a/core/lib/Drupal/Core/Field/Entity/BaseFieldOverride.php
+++ b/core/lib/Drupal/Core/Field/Entity/BaseFieldOverride.php
@@ -20,7 +20,7 @@
  * @ConfigEntityType(
  *   id = "base_field_override",
  *   label = @Translation("Base field override"),
- *   controllers = {
+ *   handlers = {
  *     "storage" = "Drupal\Core\Field\BaseFieldOverrideStorage"
  *   },
  *   config_prefix = "base_field_override",
diff --git a/core/modules/migrate/src/Entity/Migration.php b/core/modules/migrate/src/Entity/Migration.php
index c287e1f..7414980 100644
--- a/core/modules/migrate/src/Entity/Migration.php
+++ b/core/modules/migrate/src/Entity/Migration.php
@@ -24,7 +24,6 @@
  * @ConfigEntityType(
  *   id = "migration",
  *   label = @Translation("Migration"),
- *   module = "migrate",
  *   handlers = {
  *     "storage" = "Drupal\migrate\MigrationStorage"
  *   },
diff --git a/core/modules/responsive_image/src/Entity/ResponsiveImageStyle.php b/core/modules/responsive_image/src/Entity/ResponsiveImageStyle.php
index 34ae8d3..f3a2084 100644
--- a/core/modules/responsive_image/src/Entity/ResponsiveImageStyle.php
+++ b/core/modules/responsive_image/src/Entity/ResponsiveImageStyle.php
@@ -26,7 +26,6 @@
  *       "duplicate" = "Drupal\responsive_image\ResponsiveImageStyleForm"
  *     }
  *   },
- *   list_path = "admin/config/media/responsive-image-style",
  *   admin_permission = "administer responsive images",
  *   config_prefix = "styles",
  *   entity_keys = {
diff --git a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestUpdate.php b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestUpdate.php
index 59a2648..41ce146 100644
--- a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestUpdate.php
+++ b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestUpdate.php
@@ -23,7 +23,6 @@
  *   },
  *   base_table = "entity_test_update",
  *   revision_table = "entity_test_update_revision",
- *   fieldable = TRUE,
  *   persistent_cache = FALSE,
  *   entity_keys = {
  *     "id" = "id",
diff --git a/core/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php b/core/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php
index c350b48..738c233 100644
--- a/core/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php
@@ -32,6 +32,28 @@ protected function setUpEntityType($definition) {
   }
 
   /**
+   * @covers ::get
+   *
+   * @dataProvider providerTestGet
+   */
+  public function testGet(array $defintion, $key, $expected) {
+    $entity_type = $this->setUpEntityType($defintion);
+    $this->assertSame($expected, $entity_type->get($key));
+  }
+
+  /**
+   * @covers ::set
+   * @covers ::get
+   *
+   * @dataProvider providerTestSet
+   */
+  public function testSet($key, $value) {
+    $entity_type = $this->setUpEntityType([]);
+    $this->assertInstanceOf('Drupal\Core\Entity\EntityTypeInterface', $entity_type->set($key, $value));
+    $this->assertSame($value, $entity_type->get($key));
+  }
+
+  /**
    * Tests the getKeys() method.
    *
    * @dataProvider providerTestGetKeys
@@ -65,6 +87,34 @@ public function testHasKey($entity_keys, $expected) {
   }
 
   /**
+   * Provides test data for testGet.
+   */
+  public function providerTestGet() {
+    return [
+      [[], 'provider', NULL],
+      [['provider' => ''], 'provider', ''],
+      [['provider' => 'test'], 'provider', 'test'],
+      [[], 'something_additional', NULL],
+      [['something_additional' => ''], 'something_additional', ''],
+      [['something_additional' => 'additional'], 'something_additional', 'additional'],
+    ];
+  }
+
+  /**
+   * Provides test data for testSet.
+   */
+  public function providerTestSet() {
+    return [
+      ['provider', NULL],
+      ['provider', ''],
+      ['provider', 'test'],
+      ['something_additional', NULL],
+      ['something_additional', ''],
+      ['something_additional', 'additional'],
+    ];
+  }
+
+  /**
    * Provides test data.
    */
   public function providerTestGetKeys() {
