Elementary Topology: A Combinatorial and Algebraic Approach