There is a secret admirer hack kicking around. Which might be suitable.
When I saw this thread i thought it may be a chance to implement the perfect marriages algorithm

which would have been fun...
(essentially every user ranks users (eg 5) in order of preference. So you'd have a top 5 users that you'd like to marry... When the algorithm is run any pair of users that rank each other first are 'married' and removed from everyone's list. Moving the remaining people up one place. This is done till there are no reciprocal matches after that it becomes an interesting problem to find the best fit for the remaining users)