BF Fixed the case of empty set of regions in bsa -- to be further checked
A pass on bsa module: simplifications, redundancy removal, more explicit variable naming