MAGN-3196: Empty CBN cannot be re-position

Today, an empty CBN will be deleted from the view on any key press inside / outside that CBN .  

This fix performs the below action :
   1. Defers the deletion of empty code block
   2. Deletes an empty CBN, only if Esc key is pressed inside that CBN
   3. Enables creation of multiple CBN.
   4. Records the deletion of an empty CBN. This helps the user to undo the deletion of that empty CBN.

http://adsk-oss.myjetbrains.com/youtrack/issue/MAGN-3196

- [ ]  @pboyer 
Why not just send an explicit `DeleteModelCommand`?  The `Esc` key logic should not live in `Model` layer.