Stora ommöbleringar i koden. Syftet var att laddningen skulle delas upp
i olika steg