When submitting an invalid number of arguments to AABB with the varargs constructor, a range violation is thrown. This is normal behavior, but it would be best for the user if they were told that their construction was invalid. I think this should best be done compile time, with static if.