Symplectic Methods in Low-dimensional Topology