Use path/filepath for cross-platform compatibility

@weberc2 I finally changed the filepath creation, but I'm still not happy with it as far as being system agnostic. I don't think Windows uses a `HOME` environmental variable, and hidden files are not marked with a `.`, so if we are going to compile this on Windows in the future, we will have to rethink the logic here.

Anyway, here it is. Let me know if I missed something.