Two-sided Matching: A Study in Game-theoretic Modeling and Analysis