take into consideration of matching pattern: reciprocal or needs or offerings

matches are now treated differently in 3 ways:

user1.id = 1, user2.id = 2

* reciprocal
> that means user1 needs what user2 offers and user1 offers what user2 needs
> match is stored as { user_id: 1, target_id: 2 }
> match is stored as { user_id: 2, target_id: 1 }

* needs
> that means user1 needs what user2 offers
> match is stored as { user_id: 1, target_id: 2 }

* offers
> that means user1 offers what user2 needs
> match is stored as { user_id: 2, target_id: 1 }

Refer to send_match.text.erb or send_match.html.erb for mail text format for the above 3 match types.