Bargaining Theory with Applications