Some refactoring in rand.d
Renamed struct bdd as BDD. Also added structs BDD and Bdd.
Some more refactoring of the BDD.
Fixed a random distribution bug in BDD.
Used == in place of 'is' for integer comparison.
Use emplace by default for buddy instantiation.

Also purged all the opOpAssign operators on BDD. This is done to move
towards making refcounting only for bdd and not for all BDD instances.