Opposite to Rails::Railtie and Rails::Engine, you are not supposed to inherit from
Rails::Plugin. Rails::Plugin is automatically configured to be an
engine by simply placing inside vendor/plugins. Since this is done
automatically, you actually cannot declare a Rails::Engine inside your Plugin, otherwise it would cause the same files to
be loaded twice. This means that if you want to ship an Engine as gem it cannot be used as plugin and
vice-versa.

Besides this conceptual difference, the only difference between Rails::Engine and Rails::Plugin is that plugins automatically load the
file “init.rb” at the plugin root during the boot process.