Reimplemented field access in the SourceLocationResult class

Much more readable, and less duplication of result making
More tests for the calculated source location fields
Fix #358 .parent field is calculated correctly now