Make tests and the plugin work the same with regardless of `ignorecase`

Made constant matching case sensitive in CompleteGeneral()
Made variable matching case sensitive various places
Made some tag matching explicitly case insensitive (functions, classes, etc.)

Special thanks for @rgroli to point these problems out
Merge branch 'master' into pr28_completion_for_call_chain
Added test runner script. Prepared implementation of call chain completion.
update regex for function name and args, remove needless split(), join()

Fixes: #15
improve regex

start matching with 'function'
fix not accepting & before function name
update filter regex to accept final and abstract keywords
extend completeUserClass test cases
Merge pull request #29 from vol0da/master

Merge #29, Re- Fixes #15

Makes `final` and `abstract` methods show up in `phpcomplete#CompleteUserClass()`'s result.
Remove duplicate test / fixtures
resolving nested return values on $this->
Merge branch 'master' into pr28_completion_for_call_chain
tests, code cleanup, taglist caching