Moved all ASM stuff into 3 classes instead of 11