Dataframe extension integration

We actually use both --- `os.path` to construct local paths (that is platform dependent) and `posixpath` to construct paths on the HDFS server (which I assume will use posix conventions)