1/ checkBlock checks if there is a block of a given quality in a given location
location is defined by rects
quality is defined by:
a/ groups
b/ if there is no groups then by blocks
c/ if there is no groups or blocks, then it simply checks existence of any block
checkBlock returns success as soon as the first matching block is found
2/ removeBlock removes blocks of a given quality in a given location
location and quality are specified the same way as in checkBlock
removeBlock returns success if at least 1 block was removed