Proof of concept for using Smart Date with Drupal Commerce to allow registration. This module will define a product type for listing events. If only using this system for free events, you can update the form display to remove the price and potentially the sku fields, and you will likely want to implement a simplified checkout process.
Link