This post by Jason Yingling look in detail the best practices for developing new blocks in the new WordPress editor and how to integrate these features into features into WordPress themes.
One interesting part of this tutorial focuses on where to put your new blocks, in your theme OR in a plugin:
The general rule of thumb for including functionality in plugins or themes is to keep themes to the presentation of content and use plugins for functionality.
Blocks fall under this same set of principles. And I fall into the camp that blocks should be included in plugins as they extend the functionality of WordPress.