Search for friends

#22 

This depends on #35 . Once that's merged, I'll rebase, and this PR will be more manageable.
Mmm... I don't like `self`, if only because I always screw up and write `self` when I mean `this` when switching back and forth between Ruby and Javascript.

Is there some broader convention we can appeal to?