Completely rewrote the directory architecture and cleaned the distinction tag vs implementation. Much more modular now