Connecting The Dots: Tensor Network Algorithms For Two-Dimensional Strongly-Correlated Systems