use `equal?` instead of `==` when checking value of need

You can tell me what you think of this, but I think it's safer to use `equal?` here and not worry about invoking any overloaded `==` operator.
Merge pull request #13 from leafo/patch-1

use `equal?` instead of `==` when checking value of need