Fixing how relative and absolute paths are handled

**TODO**: make this much cleaner :scream_cat: