Why should I instantiate an empty Block? 
This is a generic issue  - I mean, it is a problem regardless of the fix proposed in this pull request. We should prevent instantiation of empty blocks, what do you propose? should we raise an exception?