Early version submarine state, not all implemented
Updated remain submarine state functions
Fixed sub state so it actually compiles >.>