Theory of Factorial Design:Single- and Multi-Stratum Experiments