Complete refactor and shuffle of directory struct