Principles of Multidimensional Adaptive Testing