Improved method calling system for function overload