Refactoring to ensure proper load

Large update I know :(