overhauled the whole loading process. it's much cleaner now