How can I create a very simple entity definition for Webform submissions?
Got it working. In a custom module (mymodule), I implemented hook_entity_info() like so:

function mymodule_entity_info() {
  $info = array();
  $info['mm_submission'] = array(
    'label' =&gt; t('Simple Webform Submission Entity'),
    'base table' =&gt; 'webform_submissions',
    'fieldable' =&gt; FALSE,
    'entity keys' =&gt; array(
      'id' =&gt; 'sid',
      'label' =&gt; 'sid',
    ),
  );
  return $info;
}


This very simple entity definition was sufficient for VBO to treat my submissions as entities and pass their IDs to my custom URL.

Though I didn't need to, it should be possible to override the entity class controller and its entity functions (load, save, delete, etc) should you need to. This tutorial by Ronald Ashri was useful to me and talks more about that. 

After installing my custom module, I was pleasantly surprised to see a "Bulk operations: Webform submissions" field magically appear in the list of available Views fields.

I didn't make any other connection between Webform submissions and my custom entity type, nor otherwise tell VBO to treat the Views results as mm_submission entities--somebody (Views/VBO/Webform?) just automatically made it happen; which is awesome.

I presume VBO knew to process the submissions as mm_submission entities because of the entity type base table attribute? Not sure without looking more closely; perhaps someone else can shed more light on that.