Consistent ResolveUsing and ConvertUsing interfaces

Commit 8b3bc9367e2607686a72d79a47165b1765048438 (described in #445) added an option to do `ResolveUsing` with a delegate that accepts `ResolutionResult`. I further extended this with an option of a delegate that accepts `ResolutionResult, Source`. I also added (in fact, just pushed to public) same overloads for `ConvertUsing`.

So, as a result, following methods are now available:

````c#
void ResolveUsing(Func<TSource, object> resolver);
void ResolveUsing(Func<ResolutionResult, object> resolver);
void ResolveUsing(Func<ResolutionResult, TSource, object> resolver);
````

````c#
void ConvertUsing(Func<TSource, TDestination> mappingFunction);
void ConvertUsing(Func<ResolutionContext, TDestination> mappingFunction);
void ConvertUsing(Func<ResolutionContext, TSource, TDestination> mappingFunction);
````

PS All that started because I needed `ConvertUsing(Func<ResolutionContext, TSource, TDestination> mappingFunction)` in my project.