Modification of block properties mostly happens on the construction of a new block or after cloning a block; options could instead be passed into the constructor.
The obvious exception is partial block restrictions, which cannot be passed into the constructor currently, but perhaps we could change this.