some refactorings of the bbmd classes

did some refactorings in the bbmd classes, see diff :>
and some extensions too :8ball: