If you have plugins for a wordpress database I would consider using that. I'm not too familiar with wordpress/drupal/joomla but plugins are usually a good idea if your other option is to start from scratch. Chances are they already solved a lot of the issues you'd face when doing it yourself.
Design work..HTML,CSS - Twitter Bootstrap
I don't know if you have WP templates for that, in which case bootstrap might not be necessary. I was assuming ground up design and for speed and ease a framework would then help (I'm not much of a graphic designer so I tend to use those frameworks to avoid getting a programmers interface).
Login/Logout/Register..etc...PHP
Add to favorites..PHP
PHP to communicate with the database yes, so queries too.
You're probably going to need JavaScript libraries (for ease and speed, not necessity) for the common operations like retrieving form values, image zoom and so on.
Your plan sounds good and you've obviously put some thought into it with your friend, there is just one thing about what you said that sounds like a possible pitfall to me.
get the basics down, and if the site does take off, work from there
Keep in mind what you are making, a site where people go and find matches. In order to do that you'd need people, and if you want people to have matches you'd need quite a few in order for it to take off. Getting those …