Combinatorial Theory: Hyperplane Arrangements