Rename to be more descriptive and take a project object.

Retain and deprecate the 'relative' function.
Update documentation to align with current practices.
Update doc to discourage the use of `automatic_soa'.