The Two-Sided Matching Problem: Origin, Development and Current Issues