function-args.el (moo-function=): fix bug

Was returning t when functions had same name and one of them
had zero args.
function-args.el (moo-ctxt-type): improve

* function-args.el (moo-ctxt-type): Better check for variable
  declaration.
  (moo-c++-var-name-regex): New constant.
  (moo-variable-definition-p): New predicate.
  (moo-unprefix-qualifier): New pure function.
  (moo-unprefix-template): New pure function.
function-args.el (moo-ctxt-type): modify

Seems that adding a reverse will give a better tag.
function-args.el (moo-get-filename): add
function-args.el (fa-jump): add work-around