OSX and UTF-8 fixes

Splitting the file path into segments was failing on posix systems because the path starts with a "/", which meant that `len(top_folder_segments)-1` lost the last folder segment. I switched to os.path.join() instead since it seems to do what you intended more simply. 

I changed the `get_data` function in Utils to read files in `utf-8` because it was failing on one of mine. 

Do these changes still work for you on windows?

Also note: when I put a `print()` in `get_data` it was reading the file I had open dozens of times. Is that expected?