Send method to class name instead of ‘self’

This avoids potential compiler errors where multiple methods with same signature but different parameter/result types.
Turn nil arguments into empty strings

With bindings, a text field is likely to set its value to ‘nil’ when the contained string is empty.

Fixes textmate/textmate#584.
Menu selection result not thrown off by non-selectable items