Blank method names are ok

Made the JavaScriptMethod metadata work like you'd expect with a blank method name.

Useful for if something can be called as a function and treated as an object.

Examples include jQuery and Angular's TimeoutService (http://docs.angularjs.org/api/ng.$timeout)

This also has the failing test fixes in it as well.