Combinatorial Complexes: Bridging the Gap Between Cell Complexes and Hypergraphs