Fix call cross-references when _getFilename is overloaded.

Incompatible change in _getFilename signature: it is now called before
_FileTiming instance is created. This is also more consistent with the
intent to keep _FileTiming internal to this module.
Merge homonyms while profiling, but keep using id(f_globals) to avoid
re-generating filename on each lookup, as it can be expensive.
Reverts several changes from "Use globals rather than filename as unique
"file" identifier.", simplifying code.
Bump to 1.5 .
Add a paragraph on subclassing profiling classes.