Refactor function_definition
Make Script.definition work inside function call
Add tests for Script.definition when in function call
Fix test for issue #94
Treat case like `f()`
Tests for `f(| )` and `f( |)` (the latter fails)
Skip test case for finding definition at `f( |)`
Fix a failing test in Python 3
Refactor _get_function_call_and_param_index_at_point
Rename it to _func_call_and_param_index
Don't use NotFoundError in _func_call_and_param_index

This makes it simpler.
Refactor tests for function_definition
Use unittest2 for Python < 2.7
Add known failing test for function_definition
Add test/completion/definition.py
Add blackbox tests using column number
Add more test cases in completion/definition.py
Remove tests from regression.py
Merge pull request #149 from tkf/definition-in-call

Fallback to callee definition when definition not found (fixes #131)