refactor all the things

I think that commit log shows whats have been done but if you have any questions dont hesitate to ask.
few things to note:
* changed current calltip info to have just name and its type so it wont scare people :-)
* added an `auto_complete_function_params` to settings  so user can decide whether plugin should insert function's aruments on completion. one thing to think about is whether we would like to insert required arguments even if that param is turned off
* now pluging doesnt crash on unsaved buffer and does not open an empty buffer on goto if module is a builtin one.