Partially implement IF and LOGICAL_NOT. Apparently this fixed BGM loading multiple times. Also cleanup some code to make it reusable
Cleanup Recover