Started to reimplement IBoundingBox (Used to be BoundingBox, I am working on making it much more flexible)