Support conditions with +[NSManagedObject find:]

It uses +[NSManagedObject where:] under the hood anyway, so no reason to
not support predicates, etc.

Signed-off-by: Stephen Celis <stephen@stephencelis.com>
Add +[NSManagedObject findWithFormat:]

Now that we support +[NSManagedObject find:] with conditions, we can
create this nice format-based helper.

Signed-off-by: Stephen Celis <stephen@stephencelis.com>
Use +[NSPredicate predicateWithFormat:] instead

Using stringWithFormat: is problematic for strings that are passed in
that break out of the quotes.

Signed-off-by: Stephen Celis <stephen@stephencelis.com>