Improved Directory Fetching

This is a bit more experimental, but I've layed some framework to a) allow the directory to update without relaunching the app, as well as allow better control. 

Opinion, please