Remove redundant code in TypeConverter

this code does literally nothing, but reduces the performance greatly
Fix NullReferenceException on overload invocation with null parameter

If more than 1 overload matching arguments number is found, JINT tries
to look for the best match comparing desired argument type and actual
argument type. GetType on null throws NullReferenceException.
Fix AmbiguousMatchException in multiple indexers, make getters and setters invocation consistent

If class has more than 1 public indexers, IndexDescriptor ctor throws
AmbiguousMatchException.
If class has a public getter, and another public setter, its handled
inconsistently i.e. you will read from one property and write to another
one.
Greatly improve performance of overload resolution

Exception-based method overload resolution is terribly slow. I get
nearly 100 times performance improvement with this fix.
Furthermore MethodInfoFunctionInstance now don't hide real exception if
thrown by target function being invoked. I strongly recommend to
incorporate the fix into the main repository.
Merge remote-tracking branch 'upstream/pr/77'