BLK-66 Queue block groups by an expression property

Signed-off-by: Oren Leiman <oleiman@neutral.io>
Can you explain what this whole file is for? I assume it is to handle when a blocks version changes -- is that correct?