Move functionality from the debugger namespace into SubroutineLocation
Include source and source_line in SubroutineLocation

These differ from filename and line for subs defined in a string eval/
For these:
    filename will look like "(eval 123)[some/file.pm:99]"
    line will be the line within the string eval the sub appeared
    source will be the perl source file the string eval ran from
    source_line will be the like in the source file where the eval ran